java类北大计算机系java培训讲义.pptVIP

  • 0
  • 0
  • 约1.77万字
  • 约 77页
  • 2015-08-14 发布于湖北
  • 举报
java类北大计算机系java培训讲义.ppt

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * import mytest.pack.ABC; class DEF extends ABC { public static void main(String agrs[]) { DEF def=new DEF(); System.out.println(def.i); def.i=10; def.show(); } } pro_i=5 pro_i=10 1.8 Java名空间及访问规则 不同包但是是子类 * 1.8 Java名空间及访问规则 private 不允许任何其他类存取和调用 friendly(前边没有修饰字的情况) 在同一程序包中出现的类才可以直接使用它的数据和方法. * 1.8 Java名空间及访问规则 当子类中的变量名与父类的相同,原来的变量被遮盖. class A { int data_a=3;} class B extends A { int data_a=5;} class C extends B { void print_out() { System.out.println(“data_a= ”+data_a); System.out.println(“A.data_a= ”+A.data_a); System.out.println(“B.data_a= ”+B.data_a); }} data_a=5 A.data_a=3 B.data_a=5 class demo { public static void main(String args[]) { C c=new C(); c.println_out(); }} * 1.8 Java名空间及访问规则 方法的覆盖(overriding)和重载(overloading) 子孙类中定义的方法和祖先类中某个方法同名,同参数行,则祖先类中的该方法被覆盖. 方法的重载是指一个对象的多态性,即多个方法用相同的名称,但参数行不同. 类 void show(int int_num) void show(double double_num) void show(nit nit_ um, float float_um) 123 1.23 123,1.23 * 1.8 Java名空间及访问规则 到此为止-----final final在方法之前,防止该方法被覆盖. final在类之前,标是该类不能被继承 final在变量之前,定义一个常量. 属于类的变量和方法----static static 在变量或方法之前, 表明它们是属于类的, class ABCD { char data; static int_share_data; } class Demo { ABCD a,b,c,d} object b char data object c char data Object b char data static int share_data object b char data * 1.8 Java名空间及访问规则 静态变量在各实例间共享 如果是public静态变量,则其它类可以不通过实例化访问它们 静态方法称为类的方法,因此不用实例化即可调用(面向过程) 一个对象的方法可以访问对象的数据成员,尽管不属于方法的局部变量 一个类的方法只能访问自己的局部变量 * 1.8 Java名空间及访问规则 例:不正确的引用 class StaticError { String mystring=“hello”; public static void main(String args[]) { System.out.println(mystring);} } 错误信息:can’t make a static reference to nonstatic variable. 为什么不正确? 只有对象的方法可以访问对象的变量. * 1.8 Java名空间及访问规则 解决的办法: 1. 将变量改称类变量 class StaticError { static String mystring=“hello”; public static void main(String args[]) { System.out.println(mystring);} } * 1.8

文档评论(0)

1亿VIP精品文档

相关文档