程序设计实训报考.docVIP

  • 3
  • 0
  • 约7.32千字
  • 约 10页
  • 2018-08-24 发布于贵州
  • 举报
程序设计实训报考

实 验 六 (一)实验题目:类的封装与继承 (二)实验目的:1、理解物理世界和面向对象编程中的封装和继承思想。 2、掌握封装和继承在Java中的语法规则和结论,并灵活运用进行编程。 (三)实训案例: 1、private修饰的成员只能在同类的内部被访问;private成员不能被继承。 2、默认访问修饰符的成员只能被同包下的类访问。 3、protected只能修饰成员属性或方法,不能修饰类;protected成员可以被同包下其他类访 问,也可以被不同包下的子类访问。 4、类的继承只允许单继承。 5、构造方法不允许被继承。 (四)代码实现: 1、private成员只能在同类的内部被访问: package pgfive; class PrivateTest{ private String s=abc; private void access(){ System.out.println(s); //从内部访问,合法 } public void f1(){ System.out.println(s); access(); } public void f2(PrivateTest t){ String ss=t.s; //从内部可以直接访问:t.s System.out.println(ss); } public void setS(String ps){ s=ps; } } classT{ public static void main(String[] args){ PrivateTest t = new PrivateTest(); t.f1(); t.s; //从外部访问,非法 t.setS(def); new PrivateTest().f2(t); } } 2、private成员不能被继承: class A{ private String s=abc; private void func(){ System.out.println(This is a private method.); } } class B extends A{ public void fB(){ System.out.println(s); func(); } public static void main(String[]args){ new B().fB(); } } 3、编译出错: PrivateInherit.java:10: s 可以在A中访问 private System.out.println(s); ^ PrivateInherit.java:11:找不到符号 符号:方法func() 位置:类B func(); ^ 2错误 从上面的编译错误信息第一行可以推知:A、B类源代码是放在了一个文件PrivateInherit.java中的。 (五)实验心得: 通过实验了解到,验证一条结论,有些需要从正反两面来验证。先从同包下的 类的来访问,这是允许的,在从异包下的类来访问,这是不允许的。 实 验 七 (一)实验题目:类的多态 (二)实验目的:1、理解物理世界和面向对象编程中的多态思想。 2、掌握多态在Java中的语法规则和结论,并灵活运用进行编程。 (三)实训案例: 1、重载方法对修饰符列表、返回类型是否相同不作要求,区别仅仅在于

文档评论(0)

1亿VIP精品文档

相关文档