方法中的关键字的值得注意的用法和事项

一.new 关键字:

一. new关键字在创建对象的时候做的事情:
   1.在堆中开辟空间,对象的成员属性会跟随对象进入到堆内存中并附默认值
   2.调用构造器对象初始化信息
   3.将地址返回给引用
 
二. 构造器|构造函数|构造方法:
     构造器是一个特殊的方法
 
  构造器的作用:
      为对象初始化信息的,不是创建对象
  使用:
      跟随new一起使用
   定义:
      修饰符 类名(参数列表){
          ....
      }
     构造器的定义不需要返回值类型|void
     构造器的名字必须与类名保持一致
       可以使用return,结束方法
       方法可以重载,构造器也具有重载的特性,因为构造器是个特殊的方法
 
三. 注意:
    1.如果没有显示定义任何构造器,编译器会为你默认提供一个空构造(没有参数的构造器)
  2.如果有显示定义的构造器,编译器不会再为你提供任何构造器了
 
   以后再去定义自定义的模板类的时候,至少为它提供一个空构造
 </>public class Demo01 {
    public static void main(String[] args) {
        Student s=new Student();  //()用来匹配不同的构造器
        System.out.println(s);
        s.name="王健林";
        s.age=19;
        s.school="清华";
        s.study();
        s.info();
        
        //创建对象的同时为这个对象的某些成员属性赋值
        Student s2=new Student("杨洋");
        Student s3=new Student("杨洋

",20,"清华大学");
        s3.age=21;
        
        s2.info();
        s3.info();
        
        //s3.Student();
        
        //Scanner sc=new Scanner();
    }
}

</>

二.this关键字:

this关键字
 this指代当前new的对象,动态的执行不同的对象
  
  构造器的首行调用本类中的其他构造器
      this(参数列表);
      注意:必须用在构造器首行才可以
          构造器之间不能相互调用
 
 区分同名变量问题 

   this存储这个对象的地址
   在成员方法中,this指代当前调用这个成员方法的对象
   如果出现同名变量的问题,想要指代成员变量必须使用this
   如果不存在同名问题,this可以省略
   在构造器中,this指代当前new的对象
 
 注意: this和static不能同时使用

 

三.Static 关键字:

static 关键字
     静态的,是一个成员修饰符,只能修饰成员,不能修饰局部
  修饰变量: 静态变量|类变量
  修饰方法: 静态方法|类方法
  
  静态内容的使用方式   

         1.对象使用
           引用名.静态变量名
                   引用名.静态方法名()

             2.通过类名使用

                  类名.静态变量名
                  类名.静态方法名()
 
 成员都是属于对象的,静态的内容是属于类的
 静态的变量在静态区中存在,是独一份的,所有对象共享的资源,在类第一次加载之后就初始化了
 成员的变量在对象的内存空间中,跟随对象存在的,有一个对象就有一份成员
 this不能在static修饰的方法中使用
  
静态的内容中只能直接使用静态的内容,不能直接使用成员的内容,但是可以通过对象使用
 成员内容中可以直接使用静态的可以直接使用非静态的内容

</>

class Dog{
    //成员变量
    String name;
    int age;
    
    //静态的地区  ,所有的狗共享的
    static String location = "上海";
    
    public Dog() {
    
    }
    public Dog(String name,int age) {
        this.name=name;
        this.age=age;
    }
    
    //成员方法
    public static void wang(){
        System.out.println("wangwangwang");
    }
    //成员方法
    public void info(){
        System.out.println(name+","+age);
    }
}

 

</>
 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值