java对象、静态、继承及super

来源:互联网 发布:牛津大学古典学数据库 编辑:程序博客网 时间:2024/06/05 08:36

对象命名:

A a=new A();


匿名对象的使用:


 

匿名对象使用完之后再也无法找到。


this是调用这个函数的对象

使用this来调用成员变量和成员函数void talk(String name){System.out.println("my name is"+this.name+name);}使用this来调用构造函数Dog(String name,int age){this.name=name;this.age=age;}Dog(String name,int age,String color){this(name,age);//调用本类的构造函数,只能放在第一行,并且只有一个this.color=color;}



Static

定义:Static int i;

赋值:类名.i=10;

  对象名.i=10;

 

静态函数:

Static void fun()

也可以直接用类名来调用。

静态函数只能访问静态成员变量,所以没有this指针

 

静态代码块

static{

no=10;

}

为静态成员变量赋值

 

final

final
最终成员变量,其值保持不变,即常量


继承

Java只允许单继承,不允许多继承


package student;public class Person {String name;int age;void print(){System.out.println("My name is "+name+"age is"+age);}}package student;public class Student extends Person{int grade;void printGrade(){System.out.println(grade);}}package student;public class Test {public static void main(String args []){Student s=new Student();s.name="sadas";s.age=9;s.grade=90;s.print();s.printGrade();}}


Super()

1.在子类的构造函数中必须调用父类的构造函数(用super()可以调用父类的构造函数)

public class Person {String name;int age;Person(String name,int age){this.name=name;this.age=age;}void print(){System.out.println("My name is "+name+"age is"+age);}}public class Student extends Person{int grade;Student(String name,int age,int grade){super(name,age);this.grade=grade;}void printGrade(){System.out.println(grade);}}


2.用super()可以调用父类的成员函数,如果是父类和子类的函数同名的话。

public class Person {String name;int age;Person(String name,int age){this.name=name;this.age=age;}void print(){System.out.println("My name is "+name+"age is"+age);}}public class Student extends Person{int grade;Student(String name,int age,int grade){super(name,age);this.grade=grade;}void printGrade(){super.print();System.out.println(grade);}}


1 0