首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

JavaSE06—类的其他有关问题

2012-12-27 
JavaSE06—类的其他问题JavaSE06—类的其他问题1.Object类 Object类是所有类的父类。如果一个类没有使用exten

JavaSE06—类的其他问题
JavaSE06—类的其他问题

1.       Object类



Object类是所有类的父类。如果一个类没有使用extends关键字明确表示继承另外一个类,那么这个类就默认继承Object类。

Object类的方法中有一个toString()方法。







2.       内部类

在类的内部也可以定义另一个类,如果类Outer的内部再定义一个类Inner,此时类Inner称为内部类。



内部类的使用举例:


class Outer{       int a = 35;       void inst(){              Inner in = new Inner();              in.display();       }       class Inner       {              void display()              {                     System.out.println(a);              }       }}public class JavaTest{       public static void main(String[] args){                    Outer out = new Outer();              out.inst();             }} 


程序中内部类Inner可以直接调用外部类Outer中的a属性,如果把内部类拿到外面单独声明,那么在使用外部类中的a属性时,需要产生Outer类的对象,再由对象去调用Outer类的a属性。

注意:外部类是无法访问内部类的属性的。



在方法中也可以定义内部类:





class Outer{       int a = 5;       void inst(){                           class Inner              {                     void display(){                             System.out.println(a);                                                       }              }              Inner in = new Inner();              in.display();             }}




注意:在方法中定义的内部类只能访问方法中的final类型的局部变量,因为用final定义的局部变量相当于一个常量,它的声明周期抄出方法运行的生命周期。

3.       匿名内部类





interface A{       public void fun1();} class B{       int i = 10;       public void get(A a){                           a.fun1();                    }       public void test(){               this.get(new A(){                                  public void fun1(){                             System.out.println(i);                     }              });        }}  

4.       匿名对象



匿名对象就是没有明确的声明的对象。

如下例:





class Person{       private String name = "张三";       private int age = 25;       public String talk(){               return "我是:"+name+",今年"+age+"岁";        }}public class TestNoName{       public static void main(String[] args){                    System.out.println(new Person().talk);       }} 


5.       this关键字



this关键字强调对象本身,也就是调用该方法的对象。如下例:





class Person{       private String name;       private int age;       public Person(String name,int age){                    this.name = name;              this.age = age;        }} 

热点排行