экземпляр



Static java

Автор Иван задал вопрос в разделе Другие языки и технологии

В чем различие ключевых слов public и static в java? И объясните конкретно , что такое экземпляр класса. и получил лучший ответ

Ответ от Денис Цветцих[новичек]
Просто поймите разницу между классом и объектом. Класс - это абстракция, он описывает структуру какой-нибудь сущности. Например человек, он имеет рост, вес. Объект - это экземпляр класса. В нашем примере - это конкретный человек ростом 180 сантиметров и весом 80 килограммов.
ПАБЛИК - задаёт видимость членов класса. Если член класса объявлен как ПАБЛИК (но не СТАТИК) , то после создания объекта этот член будет доступен всем другим классам и объектам этих классов. Этому члену нельзя будет присвоить или получить значение без создания объекта.
Статик - объявляет, что свойство принадлежит именно классу, а не объекту. Получить и присвоить значение статическому члену можно только использую класс, а не объекты этого класса.
То есть ПАБЛИК задает видимость (могут ли использовать этом член) другие классы и объекты, а СТАТИК определяет, у кого надо этот член искать (у класса или у объекта) . Надеюсь я ответил на вопрос.

Ответ от Someone[гуру]
Я программист С++, но это вам объяснить смогу.

public - это переменная к которой вы можете обратиться и напрямую изменить её.

class my1
{
public:
int a;
}

my1 mc;
mc.a = 10;

Если бы я объявил private или protected, то доступа таким способом соответственно бы не было.

static - переменная, это переменная общая для всех классов данного типа и дочерних классов.

т. е.

class my2
{
public:
static int b;
}

my2 mc;
my2 mc2;
mc.b = 10

При этом в mc2 переменная b будет тоже содержать число 10.

Если static используется в функции, то после завершения она останется в памяти и при следующем вызове будет содержать последнее положенное в неё число. (хотя здесь я возможно путаю с extern).

Ответ от Ёергей Локотков[активный]
Разница между классом и экземпляром класса в следующем: предположим класс это описанеие определённого типа данных, тогда объект/экземпляр класса это переменная этого типа. Вообще в Объектно Ориентиированных языках так и есть существует не редко класс для каждого типа. Int например в .NET имеет класс в пространстве имён System.Int32. В Java аналогично скорее всего.

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: В чем различие ключевых слов public и static в java? И объясните конкретно , что такое экземпляр класса.
Java на Википедии
Посмотрите статью на википедии про Java
Static-X на Википедии
Посмотрите статью на википедии про Static-X
Блок инициализации на Википедии
Посмотрите статью на википедии про Блок инициализации
Внутренний класс на Википедии
Посмотрите статью на википедии про Внутренний класс
Класс программирование на Википедии
Посмотрите статью на википедии про Класс программирование
Электрическое сопротивление на Википедии
Посмотрите статью на википедии про Электрическое сопротивление
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*