alex.v, volume принадлежит объекту класса, так что у каждого объекта будет свой собственный метод. Они работают, разумеется, совершенно одинаково, но имеют дело только с полями собственного объекта. То есть, если ты одному объекту Box присвоишь одни значения полей width, height, depth, а другому - другие, то и методы будут возвращать разные значения.
Насчет Box box = new Box(). Вообще говоря, тут три момента: объявление ссылочной переменной box типа Box, создание объекта Box и присвоение ссылки на новыый объект переменной. Объявление переменной с типом Box, потому что объект создается этого типа. Можно указать надкласс Box (от которого Box наследуется), тогда все тоже будет работать, но ты не сможешь вызывать методы Box. Когда будешь читать про наследование, разберешься.
Ссылка на пост
5 дек 2010 в 10:22