Можете ли вы вставить заявление if в php email

Хотя это возможно, возможно, на таких языках, как Scala или Ceylon (см. ниже), на Java вам необходимо явно назначить аргументы конструктора переменным экземпляра. Таким образом:

public class WineChiller {

    double wineTemp;
    double preferredTemp;
    double chillTemp;

    public WineChiller(double wineTemp, double preferredTemp, double chillTemp) {
        this.wineTemp = wineTemp;
        this.preferredTemp = preferredTemp;
        this.chillTemp = chillTemp;

        getChillingTime();
    }

Аргументы конструктора видны только в области конструктора. Тот факт, что конструктор вызывает ваш getChillingTime(), не имеет значения. Если вы хотите, чтобы они были видимыми в пределах экземпляра WineChiller, вам придется создавать члены этого класса. Все методы этого класса могут затем получить доступ к членам экземпляра.

В любом случае, я настоятельно рекомендую вам внимательно прочитать учебник по Java. Вот один из них:

http://docs.oracle.com/javase/tutorial

Конструкторы на других языках JVM

I подумайте, что вы в основном боретесь с многословием Java, где вам нужно явно копировать аргументы конструктора в поля экземпляра, чтобы реализовать инкапсуляцию . Другие языки решили это более элегантно, где конструкторы могут быть неявно определены вместе с самим классом. Тем не менее, они все равно перейдут на что-то эквивалентное приведенному выше Java-коду. Например:

Scala:

class Greeter(message: String) {
    def SayHi() = println(message)
}

val greeter = new Greeter("Hello world!")
greeter.SayHi()

Пример отсюда: http://joelabrahamsson.com/learning-scala-part-four-classes-and-constructors /

Ceylon

class Point(Float x, Float y) { ... }
object origin extends Point(0.0, 0.0) {}

Пример отсюда: http://ceylon-lang.org/documentation/1.0/spec/html_single/

0
задан Tyler Craft 25 August 2012 в 01:57
поделиться