Java学习笔记170327

2.局部变量
  • 局部变量是在方法被执行时创建,在方法执行结束时被销毁。
  • 局部变量的名称可以与成员变量名称相同,但在方法中,此名称的值为局部变量的值。
public class test{
    static int id = 999;
    static String str = "Hello";
    public static void main(String[] args){
        System.out.println("id = " + id);
        test t = new test();
        t.f(str);
    }
    public void f(String name)
    {
        int id = 0;
        for(int i = 0; i < 10; i++)//第一个i作用域开始
        {
            System.out.println("i = " + i + "id = " + id);
        }                          //第一个i作用域结束
            for(int i = 0; i < 10; i++)//第二个i作用域开始
        {
            //int id = 1;  //错误代码,此id在局部变量id的作用域内重复定义
            System.out.println("i = " + i + "id = " + id);
        }                          //第二个i作用域结束
    }
}
结果:
id = 999
i = 0id = 0
i = 1id = 0
i = 2id = 0
i = 3id = 0
i = 4id = 0
i = 5id = 0
i = 6id = 0
i = 7id = 0
i = 8id = 0
i = 9id = 0
i = 0id = 0
i = 1id = 0
i = 2id = 0
i = 3id = 0
i = 4id = 0
i = 5id = 0
i = 6id = 0
i = 7id = 0
i = 8id = 0
i = 9id = 0
3.this关键字
  • this关键字代表本类对象的引用
  • this可以调用成员变量和成员方法
  • 在局部变量或方法参数覆盖了成员变量时,就需要添加this关键字明确引用的是类成员还是局部变量或者方法参数。
  • 作为方法的返回值
  • 调用构造方法(只能在构造方法的第一句使用此方法
package day01;

public class test{
    static String str = "Hello";
    public static void main(String[] args){
    AnyThing t = new AnyThing();
    }
class AnyThing{
    public AnyThing(){                //定义有参构造方法
    this("调用有参构造方法");            //使用this调用有参构造方法
    System.out.println("无参构造方法");
    }
    public AnyThing(String name){     //定义有参构造方法
    System.out.println("有参构造方法");
    }
}

结果:
有参构造方法
无参构造方法

package day01;

public class test{
    static String str = "Hello";
    public static void main(String[] args){

        AnyThing t = new AnyThing(str);
    }
    public void f(String name)
    {
        int id = 0;
        for(int i = 0; i < 10; i++)//第一个i作用域开始
        {
            System.out.println("i = " + i + "id = " + id);
        }                          //第一个i作用域结束
            for(int i = 0; i < 10; i++)//第二个i作用域开始
        {
            //int id = 1;  //错误代码,此id在局部变量id的作用域内重复定义
            System.out.println("i = " + i + "id = " + id);
        }                          //第二个i作用域结束
    }
}
class AnyThing{
    public AnyThing(){                //定义有参构造方法
    System.out.println("无参构造方法");
    }
    public AnyThing(String name){     //定义有参构造方法
    this();     
    System.out.println("有参构造方法");
    }

}

结果:
无参构造方法
有参构造方法

4. 构造方法
  • 与类同名
  • public修饰
  • 无返回值,但不需要加void public book{……}即可
  • 类实例化一个对象时,自动调用构造方法,如无任何构造方法(无参或有参),编译器自动创建一个无参的构造方法
5.静态常量、变量、方法
  • static关键字修饰
  • 通过类名.静态类成员调用
  • 静态数据与静态方法的作用是为了提供共享数据或者方法,如final static double PI = 3.14;
  • 静态方法中不可以使用this关键字
  • 静态方法不可以直接调用非静态方法
  • 局部变量不可声明为static
  • static定义的静态区域只会被执行一次
6.主方法
  • public static void main(String[] args){……}
  • 主方法是静态方法,不能直接调用非静态方法
  • 无返回值
7.引用
  • Book book = new Book();其中Book是类名,book是对象的引用,new Book ()创建了一个对象并存放在堆中,book存放的是此对象的内存地址。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值