类和对象

 类的成员可以包含以下:字段方法代码块内部类接口等。

// 创建类
class Person{
   public int age;                             //成员属性 实例变量
    public static int count;                 //静态成员变量       注释:不用new直接(Person . count)
   public void eat() {                        //成员方法
      System.out.println("吃饭!");  
  }
    public static void staticFun(){      //类方法            注释:不用new直接(Person.staticFun)
      System.out.println("123");  
}
 }
  public final int SIZE = 10 ; // final 修饰的叫常量,也属于对象。 被 final 修饰,后续不可更改
    public static final int   COUNT = 99 ; // 静态的常量,属于类本身,只有一份 final 修饰,后续不可更改

 总结:所有被static所修饰的方法或者属性,全部不依赖于对象。  

基本语法

// 创建类
class < class_name > {  
    field ; // 成员属性
    method ; // 成员方法
}
// 实例化对象
< class_name > < 对象名 > = new < class_name > ();  =>    Person person = new Person ()
实例:
class Person {
    public int age ; // 成员属性 实例变量
    public String name ;
    public String sex ; 输出结果为:
注意事项
new 关键字用于创建一个对象的实例 .
使用 . 来访问对象中的属性和方法 .
同一个类可以创建对个实例 .
3. 类的成员
类的成员可以包含以下:字段方法代码块内部类接口等。
此处我们重点介绍前三个 .
3.1 字段 / 属性 / 成员变量
在类中 , 但是方法外部定义的变量 . 这样的变量我们称为 " 字段 " " 属性 " " 成员变量 "( 三种称呼都可以 , 一般不会严 格区分).
用于描述一个类中包含哪些数据 .
    public void eat () {                         // 成员方法
      System . out . println ( " 吃饭 !" );  
  }
    public void sleep () {
      System . out . println ( " 睡觉 !" );  
  }
}
public class Main {
public static void main ( String [] args ) {
        Person person = new Person (); // 通过 new 实例化对象
        person . eat (); // 成员方法调用需要通过对象的引用调用
        person . sleep ();
        // 产生对象     实例化对象
        Person person2 = new Person ();
        Person person3 = new Person ();
}
}

 public static int count;//类变量也叫静态变量,编译时已经产生,属于类本身,且只有一份。存放在方法区

//总结:所有被static所修饰的方法或者属性,全部不依赖于对象。 

4.1 private 实现封装
private/ public 这两个关键字表示 " 访问权限控制 " .
public 修饰的成员变量或者成员方法 , 可以直接被类的调用者使用 .
private 修饰的成员变量或者成员方法 , 不能被类的调用者使用 .

匿名对象

  • 匿名只是表示没有名字的对象.
  • 没有引用的对象称为匿名对象.
  • 匿名对象只能在创建对象时使用.
  • 如果一个对象只是用一次, 后面不需要用了, 可以考虑使用匿名对象.
new Person("caocao",19).show();//通过匿名对象调用方法

构造方法

  • 基本语法
构造方法是一种特殊方法 , 使用关键字 new 实例化新对象时会被自动调用 , 用于完成初始化操作 .
new 执行过程
为对象分配内存空间
调用对象的构造方法
  • 语法规则
1. 方法名称必须与类名称相同
2. 构造方法没有返回值类型声明
3. 每一个类中一定至少存在一个构造方法(没有明确定义,则系统自动生成一个无参构造)
  • 注意事项
如果类中没有提供任何的构造函数,那么编译器会默认生成一个不带有参数的构造函数
若类中定义了构造方法,则默认的无参构造将不再生成 .
构造方法支持重载 . 规则和普通方法的重载一致 .
//实例代码块
{
this.name = "bit";
this.age = 12;
this.sex = "man";
System.out.println("I am instance init()!");
}
//静态代码块       只执行一次
static {
count = 10;// 只能访问静态数据成员
System.out.println("I am static init()!");
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值