Java成员/局部变量和构造器总结
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java成员/局部变量和构造器总结相关的知识,希望对你有一定的参考价值。
1)成员变量和局部变量的区别
1.1)在类中的位置不同
成员变量:类中方法外
局部变量:方法定义中或者方法声明上
1.2)在内存中的位置不同
成员变量:在堆中
局部变量:在栈中
1.3)生命周期不同
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
1.4)初始化值不同
成员变量:有默认值
局部变量:没有默认值,必须定义,赋值,然后才能使用
2)构造器(构造方法、构造函数)
[<modifier>] <class_name> ( [<type arg_name >, ..]) {
[<statements>]
}
2.1)格式:
2.1.1)方法名和类名相同
2.1.2)没有返回值类型,连void都不能有
2.1.3)没有返回值
2.2)构造器特点:
2.2.1)一个类可以有多个构建器,但这些构造器的参数列表必须不同
2.2.2)每个类都会至少有一个构造器,如果没有定义构造器,则系统将自动提供一个默认的不带任何参数的构造器,如果类没有定义构造器,可以用这个默认的构造起来生成一个对象.推荐:永远手动自己给出无参构造方法。
2.3)构造器的作用
用于对对象的数据进行初始化。通过构造器来创建对象,使用new 关键字来创建一个对象new后面调用的是类中的一个构造器。
2.4)给成员变量赋值的方式
2.4.1)setXxx()
2.4.2)带参构造方法
2.5)案例
class Student { private String name; private int age; public Student(){} public Student(String name,int age) { this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
2.5.1)测试
class StudentDemo { public static void main(String[] args) { //方式1 Student s1 = new Student(); s1.setName("张三"); s1.setAge(27); System.out.println(s1.getName()+"---"+s1.getAge()); //方式2 Student s2 = new Student("李四",30); System.out.println(s2.getName()+"---"+s2.getAge()); } }
本文出自 “永不放弃!任志远” 博客,谢绝转载!
以上是关于Java成员/局部变量和构造器总结的主要内容,如果未能解决你的问题,请参考以下文章
Java Review (八面向对象----成员变量和局部变量)
start from the beginning-JAVA(成员变量与局部变量的区别封装构造方法)