this关键字及static调用

/**
 * 构造方法的语法结构:
 * 【修饰符列表列表】  构造方法名(形式参数列表){
 *     构造方法体;
 * }
 * 对于构造方法来说,返回值类型不需要指定,并且也不能写void,否则会变成普通方法。
 * 对于构造方法来说,构造方法的方法名必须和类名保持一致
 * 构造方法是怎样调用的?
 *      普通方法:有static关键字修饰的方法调用方式:类名.方法名(实参)、没有static关键字修饰的方法调用方式:引用.方法名(实参)
 *      new 构造方法名(实参列表)
 * 当一个类中没有定义任何构造方法的话,系统默认给该类提供一个无参数的构造方法,称为缺省构造器
 * 没有static关键字的方法被称为实例方法
 * 当一个行为/动作执行的过程中需要对象参与的,那么这个方法一定要定义为“实例方法”,不能带static关键字
*/

 public class Test {
    //没有static的变量
     int i = 10;
    //有static的普通方法
    public static void doSome(){   
        System.out.println("do some!");
    }
    //没有static的普通方法
    public void doOther(){
        System.out.println("do other!");
    }
    //有static的方法
    public static void method1(){
        // 完整的方式调用doSome()
        Test.doSome();
        //省略的方式调用doSome()
        doSome();
        // 完整的方式调用doOther()
        Test tt = new Test();
        tt.doOther();
        // 省略的方式无法调用doOther()

        // 完整的方式调用i
        System.out.println(tt.i);
        //省略的方法无法调用i



    }
    //没有static的方法
    public  void method2(){
        // 完整的方式调用doSome()
        Test.doSome();
        //省略的方式调用doSome()
        doSome();

        // 完整的方式调用doOther()
        this.doOther();
        // 省略的方式调用doOther()
        doOther();

        // 完整的方式调用i
        System.out.println(this.i);
        // 省略的方式调用i
        System.out.println(i);



    }

    public static void main(String[] args) {

        //完整的方式调用method1
        Test.method1();
        method1();//省略的方式调用method2
        //完整的方式调用method2
        Test t = new Test();
        t.method2();
        //省略的方法无法调用
    }


}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值