- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章 面向对象(2)
对象与引用
引用概念
对象类型的概念就是引用
Student s;--引用//完整叫法:声明一个对象的引用
s = new Student;
引用存储的是对象内存空间的首地址
例1:
public class Test{
public static void main(String args[]){
int a = 10;
int b = a;
b++;
System.out.println(a);//a=10
}
}
简单类型的变量存储的是数据
引用类型的变量存储的是地址
程序中的值传递
例2:
public class Test{
public static void main(String args[]){
Student s1 = new Student;
Student s2 = s1;
s2.age = 21;
System.out.println(s1.age);//21
}
}
class Student{
int age =20;
}
例3:
public class Test{
public static void main(String args[]){
int a = 10;
m1(a);
System.out.println(a);//a=10
}
}
public static void m1(int b){
b++;
}
例4:
public class Test{
public static void main(String args[]){
Student s = new Student;
m1(s);
System.out.println(s.age);//21
}
public static void m2(Student stu){
stu.age++;
}
}
class Student{
int age=20;
}
·this关键字
this是一种特殊的引用,指向当前对象
class Myclass{}
如果发生局部变量和实例变量命名冲突时,可以通过this.方式来区分局部变量和实例变量
例5:
class MyClass{
int i=10;//实例变量
public void print(){
int i = 20;//局部变量
System.out.println(i);//20
System.out.println(this.i);//10
}
}
如果发生一个构造方法中需要调用另一个构造方法,可以通过this()的方式调用,但this()必须要书写在第一行
例6:
class MyClass{
int i;
public Myclass(){
System.out.println(i);
System.out.println(this is Myclass);
}
public Myclass(int i){
this();
this.i=i;
}
}
创建一个字符串对象
String s = suns;
String s = new String(suns);
字符串值得判断equals方法
String s1 = new String(suns);
String s2 = new String(suns);
System.out.println(s1==s2);//false(s1与s2的地址不同。==是判断引用)
System.out.println(s1.equals(s2));//true
串池//通过创建的字符串,是存储在串池中的!
String s1 = suns;
String s2 = suns;
System.out.println(s1==s2);//true
String类中的常用方法
boolean equals()
char charAt(int pos)
int length()//获得字符串长度
String[] split();//通过一个分隔符拆分字符串
boolean startWith(String s)//判断是否以特定字符开头。返回true或false
trim()//剔除字符串中的空格
String substring(int begin,int end)//截取字符串
字符串的连接
String s1 = sun;
String s2 = shuai;
String s3 = s1+s2;
文档评论(0)