Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Конструкторы. Создание объектов класса.
class Sphere { static final double PI=3.14; static int count = 0;
// поля double radius; double xCenter; double yCenter; double zCenter;
//конструктор Sphere (double theRadius, double x, double y, double z) { radius = theRadius; xCenter = x; yCenter = y; zCenter = z; ++ count; } //методы static int getCount () { … return count } double volume () { return 4.0/3.0*PI*radius*radius; } … }
Конструкторы. Создание объектов класса public class SphereTest { public static void main (String[] args) { System.out.println (“Number of object=” + Sphere.getCount());
Sphere myBall = new Sphere (4.0, 0.0, 0.0, 0.0); System.out.println (“Number=” + myBall.getCount ());
Sphere globe = new Sphere (12.0, 1.0, 1.0, 1.0) System.out.println (“Number=” + Sphere.getCount ()); System.out.println (“myBall volume=” + myBall. volume ()); System.out.println (“globe volume” + globe.volume ());
Добавим в Sphere второй конструктор по умолчанию: noArgs.
Sphere () { xCenter = 0.0; yCenter = 0.0; zCenter = 0.0; radius = 1.0; ++ count; } Теперь можно в SphereTest добавить:
Sphere addBall = new Sphere (); System.out.println (“addBall volume=” +addBall.volume)); System.out.println (“Number=”+Sphere.getCount()); System.out.println (“Volume [R=2.0]=” + newSphere (0.0, 0.0, 0.0, 2.0).volume()); Синтаксис: new myClass.f (). Тема 6 Управление доступом Спецификаторы доступа указывают, что доступно программисту – клиенту (пользователю класса), а что нет (public, protected, пакетный, private). Классы связываются в библиотеку с помощью пакета (package) и права доступа зависят от того, в одном или разных пакетах находятся классы.
|