傻大方


首页 > 人文 >

Java|都说类和object是java中的两大怪物,今天就来消灭它们



按关键词阅读:

Java|都说类和object是java中的两大怪物,今天就来消灭它们

文章图片

Java|都说类和object是java中的两大怪物,今天就来消灭它们

文章图片

Java|都说类和object是java中的两大怪物,今天就来消灭它们

文章图片


最近老是有小伙伴问类和Object相关的问题 , 感觉还是很多人对此不是很明白 , 那我们今天就干掉这两个怪物 。
类介绍
Java 程序是由若干个类组成的 , 类也是面向对象编程思想的具体实现 。
以下为类的定义:

关键字import的三种用法单类型导入
当我们需要使用不同包下的类时 , 就需要使用 import 导入包或类 , 这个时候才能正常使用 。 例如 , 我们要使用java.util下的 ArrayList 就必须使用 import java.util.ArrayList , 代码如下:

这个只是表象 , 其实也是一个一个的导入的 , 只是在代码层面看起来是一次性全部导入了 。
静态导入
import 还可以导入静态方法和静态域的功能 , 比如以下代码:

以上代码也可以顺利地执行 , 这也是 import 好玩的一个地方 。
构造方法构造方法也叫构造器或构造函数 , 它的作用是类在进行初始化的时候会调用对应的构造方法 , 比如以下代码:

构造方法五大原则

  1. 构造方法必须与类同名;
  2. 构造方法的参数可以没有或者有多个;
  3. 构造方法不能定义返回值(默认返回类型就是本类类型);
  4. 每个类可以有一个或多个构造方法;
  5. 构造方法总是伴随着 new 操作一起使用 。
注意:如果勒种没有显示的定义构造方法 , 那么在编译的时候回默认为其添加一个无惨构造方法 。 构造方法实际开发中通常都是public修饰 , 还有就是我们想要单例的情况下搞成private修饰 。
ObjectObject 类是 Java 中的一个特殊类 , 它是所有类的父类 , Java 中的类都直接或间接的继承自 Object 类 。
Object 类的常用方法如下:
  • equals():对比两个对象是否相同
  • getClass():返回一个对象的运行时间
  • hashCode():返回该对象的哈希码值
  • toString():返回该对象的字符串描述
  • 【Java|都说类和object是java中的两大怪物,今天就来消灭它们】wait():使当前的线程等待
  • notify():唤醒在此对象监视器上等待的单个线程
  • notifyAll():唤醒在此对象监视器上等待的所有线程
  • clone():克隆一个新对象
关于更多 Object 的内容 , 如克隆(深克隆、浅克隆)、线程的几个常用方法wait、notify、notifyAll , 对象比较 , 对象的hashCode值等 。
继承Java 中只支持单继承:即一个子类只能继承两个父类 , 而一个父类可以被多个子类继承 。
每个人都只能有一个亲生父亲 , 一个父亲是可以有多个儿子的 。
用法:使用 extends 关键字来实现类的继承 , 示例代码如下:

以上程序执行结果:hello
继承的注意点
  1. 单一继承性 。 (在Java中是不支持多继承的 , 通俗的说子类只能有一个父类 , 而父类可以有很多子类 。 )
  2. 支持多层继承 。 (继承可以一直传下去 , 子类有父类 , 父类又有父类...)
  3. 如果父类成员使用private修饰那么子类不能被继承 。 (private只是对本类有效)
  4. 如果一个子类继承了父类的属性和方法还可以有自己特有的属性和方法 。 (不光有父类的属性(可继承的)和方法(可继承的) , 也有自己独有的属性和方法 。 )
  5. 当子类和父类的成员变量重名的时候子类优先 。 (就近原则)
继承使用技巧
  • 将公共的变量或者方法提取到超类中;
  • 除非所有的方法都有继承的意义 , 否则不要使用继承;
  • 在方法覆盖时不要改变原有方法的预期行为 。
  • 一般在写代码的时候发现代码中存在重复代码需要向上抽取考虑继承 。
  • 当某个类的设计非常复杂的时候可以考虑继承
继承的优点
  • 代码的可重用性 。
  • 使用继承可以轻松的定义子类 。
  • 父类的属性和方法可以用于子类中(非private修饰) 。分页标题#e#
  • 设计应用程序变得更加简单 。
设计模式中大量使用
比如:模板方法模式 , 就是采用继承 , 子类自己去实现自己的业务逻辑 。


    来源:(田维常)

    【】网址:/a/2021/0129/kd656942.html

    标题:Java|都说类和object是java中的两大怪物,今天就来消灭它们


    上一篇:汇通网|德国CPI飙升欧元区通胀压力加大 专家称无需过早担心

    下一篇:汇通网|欧市盘前:德国四季度GDP公布在即 欧元多头谨慎行事


    人文

    诈骗|主犯判处十年!这些人利用网络金融平台诈骗……

    阅读(27)

    (网络配图)  此外,谢某还指使另两人何某、潘某以在网上交友聊天形式诱骗他人到某投资平台投资,并约定以底薪加提成的方式来支付报酬。  2019年6到7月间,被害人陈某经何某诱骗下载了某投资平台。之后,在谢某、何某、潘某的鼓吹诱骗下,多次投入合计90...

    人文

    小魏带你看三农|红薯长势好就高产吗?几根主蔓合适?控旺才是促进块茎膨大的关键

    阅读(21)

    一、红薯藤蔓是植株吸收转化养分的重要载体。种植红薯的主要效益还是体现在红薯块茎大小和结薯数量,气温、光照、水分以及土壤有机质含量等因素都对红薯的长势和产量有至关重要的影响。但是无论是气候环境还是肥水管理都必然要通过红薯的藤蔓来进行吸收和转化...

    人文

    周晴烽|“曳尾菌”:从细微之处发现科学之美

    阅读(16)

    |而是缺少发现科学之美的眼睛。”因为科学已经融入到我们日常生活的各个角落,但是诚如萨根所言,“我们生活在一个完全依赖科学和技术的社会中,然而几乎没有人了解这些科学和技术。”当然,我们不能刻板地理解萨根的这一言论,而是要探讨如何让公众更好地理...