资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Java

成员变量与局部变量,以及private(私有变量)、构造方法的相关用法

Java 更新时间: 发布时间: 计算机考试归档 最新发布

成员变量与局部变量,以及private(私有变量)、构造方法的相关用法

成员变量:                 是在类中,且步子方法中的变量,叫做成员变量,有初始化值。 局部变量:                 在方法中的变量,叫做局部变量,它没有默认值,必须先定义,赋值,才能用。

成员变量与局部变量的不同点:                  1、类中的位置不一样:成员变量在类中,方法外,而局部变量在方法内。                 2、内存位置不同:成员变量在堆内存,局部变量在栈内存。                 3、生命周期不同:创建对象时存在,对象消失则消失,局部变量跟方法一起,随着方法被调用而存在,调用完毕消失。                 4、初始化值不同:成员变量有初始化值,局部变量则没有。  private:私有变量                 private:将属性和方法用private封装后表示,被封装的属性与方法只能在本类中使用,类外部不可见。 此时要想访问被封装的属性,必须提供getter与setter方法 代码:
package GolbalText2;
//        学生类
public class Student {
//    成员变量
    String name;
    private int age;

//    提供set方法,当括号里的变量名与成员变量名同名时:要用this.变量名:表示成员变量
//    不加this表示局部变量,防止遮挡成员变量
    public void setAge(int age) {
        this.age = age;
    }
//    提供get方法,返回值时什么类型,就用什么类型
    public int getAge() {
        return age;
    }
    public void show(){
        System.out.println(name+age);
    }
}
用private定义的成员变量不可以直接访问,我们可以通过get来访问

代码:

package GolbalText2;
//        测试类
public class StudentDemo {
    public static void main(String[] args) {
//        创建对象
        Student sd = new Student();
        sd.name="张三";
//        给带有封装属性的成员变量赋值

        sd.setAge(16);          //直接带入向管的值
//        显示类中的方法,通过show方法显示
        sd.show();

//        第二种显示,这是直接显示
        System.out.println(sd.name+sd.getAge());
    }
}

构造方法:初始化对象。                 java的构造方法在创建时被调用。Java有默认的构造方法,但是当想用别的构造方法时:需要重新定义构造方法。                 定义构造方法:                                         1、方法名必须与类型相同                                         2、可以没有参数,或多个参数                                         3、返回值类型就是本身的类型                                        4、跟创建对象中的new连用
package GolbalText3;
//  学生类
public class Student {
    String name;
    int age;
    public Student(){
        System.out.println("这是无参数的构造方法");
    }
    public void show(){
        System.out.println(name+","+age);
    }
}
------------------------------------------------------------------------------------package GolbalText3;
//  测试类
public class StudentDemo {
    public static void main(String[] args) {
//        创建对象
        Student ad = new Student();
        ad.show();
    }
}

可以看到 创建对象,其实也是在调用构造方法 构造方法传值的情况:
package GolbalText3;

import GolbalText2.Student;

public class Student1 {
    private String name;
    private int age;

//    无参构造方法,如果没有写,使用系统默认的构造方法
    public Student1(){
        System.out.println("这是无参构造方法");
    }

//    一个参数的构造方法:
    public Student1(String name){
        this.name = name;
    }
//    这是一个参数的构造方法
    public Student1(int age){
        this.age=age;
    }
//    这是两个的构造方法
    public Student1(String name,int age){
        this.name=name;
        this.age=age;
    }

    public void show(){
        System.out.println(name+","+age);
    }
}
package GolbalText3;

import GolbalText2.Student;

public class StudentDemo1 {
    public static void main(String[] args) {
//        创建对象,
        Student1 sd = new Student1();   //这个时候,学生类里的构造方法就已经开始执行了
        sd.show();
//          传一个参数(名字)
        Student1 sd1 = new Student1("张三丰");
        sd1.show();
//        传一个参数(年龄)
        Student1 sd2 = new Student1(16);
        sd2.show();
//          传两个参数(名字,年龄)
        Student1 sd3 = new Student1("周星驰",16);
        sd3.show();
    }
}

 到这里就结束了,若有错误请指正。

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/1020322.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【成员变量与局部变量,以及private(私有变量)、构造方法的相关用法】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2