2013-04-04 2 views
1

В настоящее время я изучаю Java, и я сделал все, что мог, чтобы понять и понять, что эти две вещи означают и делают, но я просто не понимаю. Я сделал много поисковых запросов, а также проверял прошлые вопросы на сайте, но я до сих пор этого не понимаю. До сих пор я знаю, что «это» каким-то образом ссылается на какой-то метод/переменную/объект, но я просто не понимаю, как он может ссылаться на любой из них, без (в примерах, которые я видел), фактически указывающих, что нужно ссылаться to, они просто используют ключевое слово this.something или this (532); ", это не имеет смысла. Такая же история с toString, они не являются логикой в ​​этих двух, которые я получаю. В любом случае, кто-нибудь может объяснить эти два ключевых слова простым способом для меня и рассказать мне, как они могут быть даже отдаленно полезными в любой программе. Заранее спасибо.Что именно означают и делают ли клавиатуры «это» и «toString»?

+4

Какие книги или веб-уроки вы используете при изучении Java? – pamphlet

+1

Я не думаю, что вы приближаетесь к этому правильно. Вам нужно изучить понятия, а затем синтаксис. Вы знаете, что такое объект? Знаете ли вы разницу между статическим и нестатистическим экземпляром объекта?Что такое метод? – ChaosPandion

+0

'toString' не является ключевым словом, это имя метода. – EJP

ответ

2

this.something относится к объектsomething в текущем классе.

относится к способу текущего класса

this() относится к конструктора текущего класса

toString() является методом, используемым для создания String представления объекта. Поскольку каждый класс в Java является подклассом Object и Object имеет метод toString(), каждый класс имеет метод по умолчанию. Зачастую вам нужно переопределить значение по умолчанию toString(), чтобы получить значимые результаты.

1

Ключевое слово this относится к экземпляру класса.

  • this(512) относится к конструктору класса, который принимает Int в качестве аргумента
  • this.field относится к области класса
  • относится к способу класса

toString() метод наследуется от Object, но может быть переопределен в подклассе, чтобы получить более значимый результат.

+0

Ну, можете ли вы указать, к какому полю/методу вы хотите обратиться? – Knightymare

+0

@Knightymare Я не могу понять смысл этого вопроса. – EJP

+0

Nvn, я понял! Спасибо чувак! :) – Knightymare

0

Ключевое слово this относится к текущему экземпляру класса (см. http://docs.oracle.com/javase/tutorial/java/javaOO/thiskey.html).

Ключевое слово toString() не является ключевым словом: это имя метода. Он определен в классе Object и может быть переопределен. Он создает текстовое представление класса (см. http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#toString()).

0

Например, если ваш класс подобен следующему: базы данных общественного класса { общедоступную базу данных (Int порт) { } }

Затем передать этот объект класса, вы можете использовать следующим образом: это (3306); В результате это ключевое слово используется для обращения к классу

Смежные вопросы