程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

Java学习【Day 3】

发布于2021-05-29 20:40     阅读(674)     评论(0)     点赞(25)     收藏(3)


今天学的少了点…

构造器 Constructor(构造方法)

[修饰符列表] 构造方法名 (形参){
	构造方法体;
	通常在构造方法体中给属性赋值,完成属性的初始化
}

构造方法的两个特点:

  1. 必须和类名相同
  2. 必须没有返回值,也不能写void。写上void就表示普通方法,而不是构造方法

当一个类没有提供任何构造方法,系统会默认提供一个无参数的构造方法。(这个构造方法被称为缺省构造器)

构造方法的作用:

  1. 创建对象
  2. 初始化对象的值

new 本质是在调用构造方法
在这里插入图片描述

封装

  1. 属性私有化(private)
  2. 一个属性对外提供:set方法和get方法。外部只能通过set()、get()方法设置,从而保证数据的安全性
package Demo;

public class Test_Student {
    
    private String name;//设置私有属性
    
    //无参构造
    public Test_Student() {
        this.name = "DMIND";
    }

    //有参构造
    public Test_Student(String name){
        this.name = name;
    }


    //getName()
    public String getName(){
        return this.name;
    }

    //setName
    public void setName(String arg){
        this.name = arg;
    }
}

Static

如果某个类型的所有对象的某个属性值都是一样的,不建议定义为实例变量,浪费内存空间。
建议定义为静态变量,在方法区内只保留一份,节省内存开销。

① 实例的,都是和对象相关的。都是先new对象,访问时采用:引用.的方式访问

② 静态的,都是和类相关的。访问时建议采用:类名.的方式访问,当然也可以采用"引用."的方式访问
。不需要new对象

package Demo;

public class Test_static {

    //实例变量
    int i = 10;
    //实例方法
    public  void m1(){}

    //静态变量
    static int k = 10;
    //静态方法
    public  static  void m2(){}
}

Static静态代码块

定义:

Static{
	code....
}

特点:类加载时执行,并且每个静态代码块只会执行一次。

注意:静态代码块在类加载时执行,并且在main方法前执行

public class Test_static {

    static {
        System.out.println("First");
    }

    public static void main(String[] args){
        System.out.println("Third");
    }
    static {
        System.out.println("Second");
    }
}
//First
//Second
//Third

实例语句块

语法:

{
	code....
}

每调用一次构造方法,就会调用一次实例语句块。因而如果构造方法中有一部分重叠的代码,可以放在实例语句块中。

代码执行顺序

静态代码块 -> main函数 -> 实例语句块 -> 构造函数

public class Test_InstanceCode {
    static {
        System.out.println("静态代码块");
    }

    //入口
    public static void main(String[] args){
        System.out.println("main方法");
        new Test_InstanceCode();
        new Test_InstanceCode("dwa");
    }

    //实例语句块
    {
        System.out.println("实例语句块");
    }
//    {
//        System.out.println("实例语句块2");
//    }

    //Constructor
    public Test_InstanceCode(){
        System.out.println("无参数构造方法");
    }

    //Constructor
    public Test_InstanceCode(String name){
        System.out.println("有参数构造方法");
    }
}
/*
静态代码块
main方法
实例语句块
无参数构造方法
实例语句块
有参数构造方法
*/

原文链接:https://blog.csdn.net/weixin_45669205/article/details/117294338



所属网站分类: 技术文章 > 博客

作者:天花灯

链接:http://www.javaheidong.com/blog/article/207380/af6fb345ac9bab874738/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

25 0
收藏该文
已收藏

评论内容:(最多支持255个字符)