吴裕雄--天生自然JAVA面向对象高级编程学习笔记:Object类
class Demo{ // 定义Demo类,实际上就是继承了Object类
};
public class ObjectDemo01{
public static void main(String args[]){
Demo d = new Demo() ; // 实例化Demo对象
System.out.println("不加toString()输出:"+d) ;
System.out.println("加上toString()输出:"+d.toString()) ;
}
};
class Person{
private String name ; // 定义name属性
private int age ; // 定义age属性
public Person(String name,int age){
this.name = name ;
this.age = age ;
}
public String toString(){
return "姓名:" + this.name + ";年龄:" + this.age ;
}
};
public class ObjectDemo02{
public static void main(String args[]){
Person per = new Person("李兴华",30) ; // 实例化Person
System.out.println("对象信息:" + per) ;
}
};
class Person{
private String name ; // 定义name属性
private int age ; // 定义age属性
public Person(String name,int age){
this.name = name ;
this.age = age ;
}
public boolean equals(Object obj){
if(this==obj){ // 地址相等
return true ; // 肯定是同一个对象
}
if(!(obj instanceof Person)){ // 不是Person对象
return false ;
}
Person per = (Person) obj ; // 向下转型
if(per.name.equals(this.name)&&per.age == this.age){
return true ; // 依次比较内容
}else{
return false ;
}
}
public String toString(){
return "姓名:" + this.name + ";年龄:" + this.age ;
}
};
public class ObjectDemo03{
public static void main(String args[]){
Person per1 = new Person("李兴华",30) ; // 实例化Person
Person per2 = new Person("李兴华",30) ; // 实例化Person
System.out.println(per1.equals(per2)?"是同一个人!" : "不是同一个人!") ;
System.out.println(per1.equals("hello")?"是同一个人!" : "不是同一个人!") ;
}
};
interface A{
public String getInfo();
}
class B implements A{
public String getInfo(){ // 覆写方法
return "Hello World!!!" ;
}
};
public class ObjectDemo04{
public static void main(String args[]){
A a = new B() ; // 向上转型,为接口实例化
Object obj = a ; // 使用Object接收,向上转型
A x = (A)obj ; // 向下转型
System.out.println(x.getInfo()) ;
}
};
public class ObjectDemo05{
public static void main(String args[]){
int temp[] = {1,3,5,7,9} ; // 定义数组
Object obj = temp ; // 使用Object接收数组
print(obj) ;
}
public static void print(Object o){
if(o instanceof int[]){ // 判断是否是整型数组
int x[] = (int[])o ;
for(int i=0;i<x.length;i++){
System.out.print(x[i] + "\t") ;
}
}
}
};
吴裕雄--天生自然JAVA面向对象高级编程学习笔记:Object类的更多相关文章
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:继承的应用
class Array{ // 表示数组 private int temp[] ; // 整型数组 private int foot ; // 定义添加位置 public Array(int len) ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:匿名内部类
interface A{ public void printInfo() ; // } class B implements A{ // 实现接口 public void printInfo(){ S ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:包装类
public class WrapperDemo01{ public static void main(String args[]){ int x = 30 ; // 基本数据类型 Integer i ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:宠物商店实例分析
interface Pet{ // 定义宠物接口 public String getName() ; public String getColor() ; public int getAge() ; ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:抽象类与接口的应用
abstract class A{ // 定义抽象类A public abstract void print() ; // 定义抽象方法print() }; class B extends A { / ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:instanceof关键字
class A{ // 定义类A public void fun1(){ // 定义fun1()方法 System.out.println("A --> public void fun ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:对象的多态性
class A{ // 定义类A public void fun1(){ // 定义fun1()方法 System.out.println("A --> public void fun ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:接口的基本实现
interface A{ // 定义接口A public static final String AUTHOR = "李兴华" ; // 全局常量 public abstract ...
- 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:final关键字
final class A{ // 使用final定义类,不能有子类 }; class B extends A{ // 错误,不能被继承 }; class A{ public final void p ...
随机推荐
- php 算法知识 冒泡排序
function bubble_order($arr){ //得到长度 $count_num=count($arr); for($k=1;$k<$count_num;$k++){ //对长度越来 ...
- PHP的isset()、is_null、empty()使用总结
这几个变量判断函数在PHP开发中用的其实挺多的,而且粗看上去都差不多,但其实还是有不少的区别的,如果搞不清楚,也许就会遗留一些潜在的bug, 包括我自已也遇到过这样的坑,比如有一次我就遇到过用empt ...
- (踩过的坑)使用Github Page搭建个人博客
最近需要搭建一个网站,作为导航网址,但是自己的域名备案还要等上几天,就想着有没有别的办法来搭建一个公网可以访问的网站. Github Page的话是一个github个人主页,完全适合用来搭建普通网站. ...
- 关于ubuntu挂载ntfs无法进行读写的解决方法
查看挂载信息 df -h 参看要挂载磁盘UUID sudo blkid 编辑/etc/fstab文件: sudo vim /etc/fstab 在最后一行添加如下一行信息: UUID=A248CF46 ...
- 3 CSS 定位&浮动&水平对齐&组合选择符&伪类&伪元素
CSS Position(定位):元素的定位与文档流无关 static定位: HTML元素的默认值, 没有定位,元素出现在正常的流中 静态定位的元素不会受到top,bottom,left,right影 ...
- JS闭包(1)
1.首先看一段代码: var a = 1; function fn1(){ var b = 2; function fn2(){ console.log(a); console.log(b); } } ...
- 四阶幻方-蓝桥杯-DFS
答案:416 用next_permutation()全部排列的话会超时 所以用dfs搜索,只搜索前三行就好,前三行确定之后,第四行也就确定 #include<iostream> #incl ...
- 最优矩阵连乘问题 区间DP
最优矩阵连乘积 Accepted: 10 Total Submit: 18Time Limit: 1000ms Memony Limit: 32768KB Description 在科学计算中经常要计 ...
- 认识gets&read(buffer over flow is bof)
gets不会检查输入的长度,从而有数据覆盖的风险,
- linux 部署java 项目命令
1:服务器部署路径:/home/tomcat/tomcat/webapps (用FTP工具链接服务器把包上传到此目录) 2:进入项目文件夹 cd /home/tomcat/tomcat/webapp ...