类的多态性:

    Java语言中含有方法重载与成员覆盖两种形式的多态:(区别于c++)

    方法重载:在一个类中,允许多个方法使用同一个名字,但方法的参数不同,完成的功能也不同。
    成员覆盖:子类与父类允许具有相同的变量名称,但数据类型不同,允许具有相同的方法名称,但完成的功能不同。

  类:class  对象:object   实例:Instance

  创建属于某类的对象,需要通过下面两个步骤来实现:
    1、  声明指向"由类所创建的对象"的变量
    2、  利用new创建新的对象,并指派给先前所创建的变量。  
  举例来说,如果要创建Person类的对象,可用下列的语句来实现:
  方法一:

    Person p ; // 先声明一个Person类的对象p
    p = new Person() ;   // 用new 关键字实例化Person的对象p

  方法二:  
      Person p = new Person() ;  // 声明Person对象p并直接实例化此对象
匿名对象:

  “匿名对象”,顾名思义,就是没有明确的声明的对象,也可以简单理解为只使用一次的对象,即没有任何一个具体的对象名词引用它;

    System.out.println(new Person().talk() );   //声明了一个匿名对象,调用Person类中的()方法;

用new Person() 声明的对象并没有赋给任何一个Person类对象的引用,所以此对象只使用一次,之后就会被java 的垃圾收集器回收;

  对象的比较:

    有两种方式可用于对象间的比较,它们是 "=="运算符与equals()方法,

  “==” 操作符用于比较两个对象的内存地址值是否相等,

  equals( )方法用于比较两个对象的内容是否一致;

下面两种String对象的声明方式到底有什么不同?

  String  str1 =  new String("java");

  String  str2 = "java";

public class StringDemo
{
public static void main(String args[])
{
String str1 = "java";
String str2 = new String("java");
String str3 = "java"; System.out.println("str1 == str2?" + (str1==str2));
System.out.println("str1 == str3?" + (str1==str3));
System.out.println("str2 == str3?" + (str2==str3));
}
}

  str1 == str2?false
  str1 == str3?true
  str2 == str3?false

由程序输出结果可以发现,str1 与 str3相等,这是因为 "==" 是用来比较内存地址值的;

str1 与 str3  相等,则证明str1 与 str3 是指向同一个内存空间的;

最新文章

  1. BZOJ 1001: [BeiJing2006]狼抓兔子
  2. Threejs 物体闪烁
  3. 3.Complementing a Strand of DNA
  4. unity 合并skinnedMeshRenderer中遇到的一个大坑
  5. git merge简介【转】
  6. rinetd 安装使用
  7. 佛祖保佑 永无BUG(网转 by atkfc)
  8. Flink Program Guide (2) -- 综述 (DataStream API编程指导 -- For Java)
  9. Androida规划nt打包
  10. javaWeb内置对象
  11. 彻底弄懂 JavaScript 执行机制
  12. css scale 元素放大缩小效果
  13. d3.js做的柱状图
  14. BZOJ.2159.Crash的文明世界(斯特林数 树形DP)
  15. BuildTool
  16. ix 混合索引
  17. WMAppManifest.xml
  18. intellij idea14 +svn配置
  19. MySQL千万级大表优化解决方案
  20. oracle 数据库数据备份

热门文章

  1. java——数据库——commons-DbUtils
  2. linux杂记(八)linux压缩与打包
  3. Delphi 2010下载+完美破解
  4. MYSQL 的数据读取方式
  5. Weblogic安装NodeManager
  6. Windows 8.1 正式版微软官方原版镜像下载(新增10/17新版下载)
  7. ListView 行高设置不起作用
  8. linux shell编程总结
  9. CCNA实验(9) -- Frame Relay
  10. HDU 4417 Super Mario