萌新学Java之java入门五

构造方法

类的书写顺序

1.成员变量
2.构造方法
3.set/get方法
4.成员方法

例:

class Car{
private String name;
private String color;

//构造方法
public Car() {
    //成员变量初始化
    name = "奥迪双钻";
    color = "白色";
    System.out.println("我是无参构造方法");
}

//有参的构造方法 (创建对象时 给成员变量初值)
//构造方法的重载
public Car(String name,String color){
    this.name = name;
    this.color = color;
    System.out.println("我是有参构造方法");
}

public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setColor(String color) {
this.color = color;
}
public String getColor() {
return color;
}
public void intruducte() {
System.out.println(name + color);
}
}
public static void main(String[] args) {

    //构造方法是系统调用的
    //注意:创建一个对象 构造方法就会调用一次
    Car car1 = new Car();
    car1.intruducte();

    //系统会根据传入的参数 来选择调用具体的构造方法
    Car car2 = new Car("保时捷","亮黑");
    car2.intruducte();
    }

构造方法:对成员变量 进行初始化
写法:
关键词 类名(){}
注意:构造方法没有返回值 并且也不提供书写返回值的位置

//如果没有无参构造方法,系统会提供一个无参的构造方法
//如果已经有了有参的构造方法,系统就不会提供无参的构造方法
//注意:一般写类时 都会书写有参和无参的构造方法

静态变量

静态变量(共享变量 被所有对象所共享)

关键词 static(修饰成员变量)

静态变量好处: 节省内存空间

静态变量的调用

1.使用对象.变量名调用
2.直接使用类名调用(推荐)
系统推荐使用类名调用是为了更好的区别 成员变量 和 静态变量

成员变量 和 静态变量的区别

1.调用方式

    成员变量:对象调用
    静态变量:对象 和 类名(推荐) 都能调用

2.内存中的表现

    成员变量:在堆内存中
    静态变量:在方法区的静态区

3.所属不同

    成员变量:属于对象的
    静态变量:属于类的(不依赖对象的创建)

4.生命周期

    成员变量:随着对象的创建而创建,随着对象的销毁而销毁
    静态变量:随着类的加载而创建,在程序结束时销毁

注意:类是优先对象存在的

代码在内存中的运行过程

1.加载main函数所在类的 .class文件
Demo04.class 加载进入方法区
2.创建AVGril对象
3.在堆内存中创建AVGril对象
该内存中保存了 成员变量
把系统分配的内存地址 返回给 gril1 保存
4.通过gril1 赋值成员变量
5.通过类名 赋值 静态变量
6.introduction方法 入栈打印出栈
7.main执行完毕
8.程序结束
这里写图片描述

静态变量(类变量)
静态方法(类方法)

静态方法(也是进栈执行)
 跟静态变量一样 被加载到方法区的静态区
 静态变量 也是随着类的加载而加载

 静态方法中不能使用成员变量
 静态方法被加载时 还没有对象产生
  注意:静态方法中不能使用this关键字

静态方法的调用
1.对象调用(不推荐)
2.直接使用类名调用(推荐)

 成员方法中可以调用 成员方法 和 静态方法
 静态方法中不能调用 成员方法 但是可以调用静态方法

 总结:静态的只能使用静态的

main解析

public 表示方法的使用权限 公开的
static 系统(JVM)可以直接使用类名调用main方法
main 不是关键字 但是名字不能换

JVM运行代码时 就是找叫类中main这个静态方法

String[] args 可以接受用户的输入

    整个main所有的词 都不能换 只有 args名可以改
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值