wangrongchen

 

匿名对象是在建对象时只有创建对象的语句方法而没有把对象的地址赋值给变量,匿名对象只能调用一次方法,想再调用时需要再创建一个新的匿名对象

创建普通对象:Person p =new Person();

创建匿名对象:new Person().方法名();

new Person().setName("王无");

内部类:写在其他类的内部或者成员位置或局部位置,这是其他类叫外部类。在内部类中可以访问外部类的属性。

当内部类写在成员位置时,叫成员内部类,写在局部位置时,叫局部内部类。

成员内部类定义格式:  跟定义普通的类基本一样

class 外部类名{

  public class 内部类名(){}

}

访问方式:外部类名 内部类名 变量名 =new 外部类名().new 内部类名()

public class a {  //外部类
    class b{    //内部类
        public void c(){
            System.out.println("这是一个成员类");
        }
    }
}
a.b aa= new a().new b();
        aa.c();

 局部内部变量的定义方式:

class 外部类名{

  修饰符  返回值  方法名(){

    class 内部类{其他代码}

}

}

访问方式:在外部创建内部类对象,在main方法中调用方法

 

 

修饰符

 

public

protected

default

private

同一类中

同一包中(子类与无关类)

 

不同包的子类

 

 

不同包中的无关类

 

 

 

 

要想仅能在本类中访问使用private修饰;

l 要想本包中的类都可以访问不加修饰符即可;

要想本包中的类与其他包中的子类可以访问使用protected修饰

要想所有包中的所有类都可以访问使用public修饰。

注意:如果类用public修饰,则类名必须与文件名相同。一个文件中只能有一个public修饰的类。

代码块

 1 package com.oracle.demo04;
 2 
 3 public class Static {
 4     private String name;
 5     private int age;
 6     /*构造代码块,创建一个对象执行一次*/
 7     //构造代码块
 8     {
 9         System.out.println("这是构造代码块");
10     }
11     /*静态代码块,在该类第一次创建对象时,执行一次,以后不管再创建多少个,都
12      * 不执行了,就执行一次,优先于其他代码块*/
13     //静态代码块
14     static{
15         System.out.println("这是静态代码块");
16     }
17     //局部代码块
18     public void show(){
19         System.out.println("这是局部代码块");
20     }
21 }

 

分类:

JAVA

技术点:

相关文章:

  • 2022-12-23
  • 2021-12-07
  • 2021-04-24
  • 2021-07-04
  • 2022-01-27
  • 2021-05-12
  • 2021-05-27
  • 2021-10-01
猜你喜欢
  • 2021-10-03
  • 2021-05-22
  • 2022-12-23
  • 2022-02-16
  • 2018-12-05
  • 2021-05-21
  • 2021-07-16
相关资源
相似解决方案