java基础day13---引用数据类型
day13
1.引用数据类型进行赋值
----总结:多个引用名称指向同一个对象
当一个引用名称改变对象中的值,
则另一个引用名称在访问属性时的值也会发生改变
class Student{
//属性
String name;
int age;
//构造方法
public Student(){
}
public Student(String name,int age){
this.name=name;
this.age=age;
}
}
//编写学生测试类
class StudentTest{
public static void main(String[] args){
//实例化学生
Student s=new Student("张三",19);
Student s2;
s2=s;//s和s2共用同一个地址,也就是说 s和s2引用名称指向同一个对象
System.out.println("s2.name="+s2.name);//张三
s2.name="李四";
System.out.println("s2.name="+s2.name);// 李四
System.out.println("s.name="+s.name);// 李四
}
}
2.引用数据类型作为参数传递
---总结:当引用数据类型作为参数进行传递时,
传递的是地址,也就是说共用同一个地址;
当一个方法中地址所对应的属性发生改变,
则另一个地址中所对应的属性值也会发生改变。
//编写学生测试类
class StudentTest{
public static void change(Student s){
System.out.println(s.name);
System.out.println(s.age);
s.name="无名氏";
}
public static void main(String[] args){
//实例化学生
Student s=new Student("张三",19);
Student s2;
s2=s;//s和s2共用同一个地址,也就是说 s和s2引用名称指向同一个对象
System.out.println("s2.name="+s2.name);//张三
s2.name="李四";
System.out.println("s2.name="+s2.name);// 李四
System.out.println("s.name="+s.name);// 李四
--------------------
Student s=new Student("李四",23);
System.out.println(s.name);//李四
System.out.println(s.age);//23
change(s);
System.out.println("s.name="+s.name);//无名氏
System.out.println("s.age="+s.age);//23
}
}
相关文章
- java基础 ArrayList集合基本方法演示
- CentOS 7 安装 JAVA环境(JDK 1.8)
- 那些年,我们一起读过的《JAVA与模式》
- java语言基础学习从零开始(第五节---java字符串操作与位运算)
- Java高并发编程基础三大利器 - CountDownLatch
- Dockerfile 部署Java tomcat
- java开发基础了解
- (JAVA):字符串的拼接插入-----StringBuffer类的常见API
- Java_jdbc 基础笔记之十一数据库连接 (通用的查询方法)
- 温习翻阅必备---java筑基期知识大全--“基础不牢,地动山摇”
- java基础之装箱和拆箱
- java学习路线-Java技术人员之路从0基础到高级
- 蓝桥杯VIP试题 之 基础练习 矩阵乘法 - JAVA
- Java小白入门200例18之随机数的使用
- Java多线程基础(一)---volatile关键字详解(并发编程特征、volatile关键字详解、volatile和synchronized区别)
- Java多线程基础(一)---线程安全(synchronized 反编译深入分析,JConsole监控进程运行,程序死锁信息打印)
- Java多线程基础(一)---Thread API(join深度详解、源码分析和案例分析之代码实现,优雅关闭线程三种方式)
- Java多线程基础(一)---深入理解Thread构造函数(Thread,ThreadGroup,JVM内存,守护线程场景)
- Java 报错 Information:java: javacTask: 源发行版 8 需要目标发行版 1.8