为什么实例化对象的封装从未被定义?
Duck duck = new Duck();
这是否会将所有对象设置为每个定义的默认值,从而可以随处访问?
此外,列表在实例化时通常不设置为私有,这是否有原因?
List<Ducks> ducks = new ArrayList<>();
我理解你的批评,我确实理解什么是封装。 明天我必须在 3 位老师面前展示一个巨大的网站,并想知道为什么当实例化列表/对象封装从未定义时我们将所有其他属性设置为私有。感谢您认真的回答
Point originOne = new Point(23, 94);
Rectangle rectOne = new Rectangle(originOne, 100, 200);
Rectangle rectTwo = new Rectangle(50, 100);
例如java教程中的这三个对象。它们的封装(私有/公共/受保护)从未被声明过
只有实例(和静态类变量)变量可以是私有的(方法和类也是如此),并且您自己将它们设置为私有。
public class Pond {
private Duck duck;
}
访问修饰符不在方法中使用,仅在字段上使用,因为方法中声明的变量仅在该方法中使用和访问。
如果您有像上面代码中那样的实例变量,它的可见性取决于修饰符。
public
意味着任何人都可以访问它等等:https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
谁能告诉我们这个声明的目的是什么——私人鸭鸭;
还有 为什么我们要这样创作??