2017-09-14

高级类特性修饰符:

Static属性:静态,可以用来修饰类的属性或者方法;静态属性是类的所有对象共享的,静态属性在内存中只有一个;

Static方法定义:如果某个方法不需要与某个特定的对象绑定,那么该方法可以使用static修饰,被static修饰的方法称为静态方法。static方法可以使用对象进行调用,也可以使用类名进行调用)

Static块:static块和static的属性以及方法的性质是相同的,用static修饰的代码块表示静态代码块,当Java虚拟机加载类时,就会执行该代码块。

Final的属性:定义就必须直接赋值或者在构造方法中进行赋值,并且后期都不能修改。

Final的方法:定义必须有实现代码,并且子类里不可被覆盖。

Final的类:不能被定义为抽象类或是接口,不可被继承。

final修饰属性:

final修饰属性时,基本数据类型的属性将成为常量,不能被修改。

static int age;   //静态属性

   String name;

   final int weight = 46;

   static{

   System.out.println("这是我的个人简介");

   }

   {

   System.out.println("请往下看");

   }

   Jiecheng(int age,String name){

   this.age = age;

   this.name = name;

   System.out.println("年龄:"+age+" 名字"+name);

   }

public static void main(String[] args) {

ShuZu.eat();//此时eat方法不在本类中,在ShuZu的类中,可以直接用类名进行调用

Jiecheng j1 = new Jiecheng(18,"jay");

Jiecheng j2 = new Jiecheng(20,"shero");

}

 

}

类与类之间的关系:

关联关系:单向关联: A类关联B类。  

双向关联:A类关联B,B类关联A;

依赖关系:指一个类A使用到了另一个类B

A类关联B类,指的是B类对象作为A类的属性存在,称为“has”关系。

A类依赖B类,指的是B的对象作为A类的方法参数存在,称为“use”关系。

int a;

 B b ;   //B类是A类的属性    相当于 数据类型   属性名

 A(B b){

System.out.println("--------");

}

public static void main(String[] args) {

// TODO Auto-generated method stub

 B b = new B();

A a1 = new A(b);

 

System.out.println("我是A类的输出语句");

}

B类语句:

B(){

System.out.println("我是B类的输出语句");

}

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println("我是g类的输出语句");

}   

posted @ 2017-09-20 17:13  rvic  阅读(68)  评论(0编辑  收藏  举报