当前位置: 首页 > news >正文

八喜网站建设二维码生成器支持微信扫码

八喜网站建设,二维码生成器支持微信扫码,网站开发费用国家标准,如何做一个自己的appJava面向对象编程进阶#xff08;四#xff09; 一、equals()方法的使用二、toString()方法的使用三、复习 一、equals()方法的使用 适用性#xff1a;任何引用数据都可以使用。 自定义的类在没有重写Object中equals()方法的情况下#xff0c;调用的就是Object类中声明的… Java面向对象编程进阶四 一、equals()方法的使用二、toString()方法的使用三、复习 一、equals()方法的使用 适用性任何引用数据都可以使用。 自定义的类在没有重写Object中equals()方法的情况下调用的就是Object类中声明的equals()比较两个对象的引用地址是否相同。(或比较两个对象是否指向了堆空间中的同一个对象实体)。 开发中使用说明: 实际开发中针对于自定义的类常常会判断两个对象是否equals()而此时主要是判断两个对象的属性值是否相等。所以:我们要重写Object类的equals()方法。 package exec.equals;/*** package:exec.equals** Author jimmy-yan* Create 2024/10/24 20:48*/ public class UserTest {public static void main(String[] args) {User u1new User(tom,12);User u2new User(tom,12);System.out.println(u1.equals(u2)); //false 判断地址值是否相等} }class User {String name;int age;public User() {}public User(String name, int age) {this.name name;this.age age;} } 面试题区分和equals()的区别 :运算符 使用范围基本数据类型、引用数据类型 基本数据类型判断数据值是否相等 引用数据类型比较两个引用变量的地址值是否相等 equals()方法 使用范围引用数据类型 具体使用对于类来说重写equals()和不写equals()的区别 package exec.equals;import java.util.Objects;/*** package:exec.equals** Author jimmy-yan* Create 2024/10/24 20:48*/ public class UserTest {public static void main(String[] args) {User u1new User(tom,12);User u2new User(tom,12);System.out.println(u1.equals(u2)); //true} }class User {String name;int age;public User() {}public User(String name, int age) {this.name name;this.age age;}//重写equals方法Overridepublic boolean equals(Object o) {if (this o) return true;if (o null || getClass() ! o.getClass()) return false;User user (User) o;return age user.age Objects.equals(name, user.name);}} 二、toString()方法的使用 平时我们在调用System.out.println()打印对象引用变量时其实就调用了对象的toString() 自定义的类在没有重写Object类的toString()的情况下默认返回的是当前对象的地址值。 像String、File、Date或包装类等Object的子类它们都重写了Object类的toString()在调用toString()时返回当前对象的实体内容。 习惯上开发中对于自定义的类在调用toString()时也希望显示其对象的实体内容而非地址值。这时候就需要重写0bject类中的toString() package toString;/*** package:toString** Author jimmy-yan* Create 2024/10/25 14:01*/ public class toStringTest {public static void main(String[] args) {User u1 new User(tom,12);System.out.println(u1.toString()); //todo toString.User6a5fc7f7System.out.println(u1); //todo toString.User6a5fc7f7}}class User{String name;int age;public User() {}public User(String name, int age) {this.name name;this.age age;} } 重写toString()方法 package toString;/*** package:toString** Author jimmy-yan* Create 2024/10/25 14:01*/ public class toStringTest {public static void main(String[] args) {User u1 new User(tom, 12); // System.out.println(u1.toString()); //todo toString.User6a5fc7f7 // System.out.println(u1); //todo toString.User6a5fc7f7System.out.println(u1.toString()); //todo User{nametom, age12}System.out.println(u1); //todo User{nametom, age12}}}class User {String name;int age;public User() {}public User(String name, int age) {this.name name;this.age age;}Overridepublic String toString() {return User{ name name \ , age age };} } 案例定义两个类父类Geometric0bject代表几何形状子类Circle代表圆形。 写一个测试类创建两个Circle对象判断其颜色是否相等;利用equals方法判断其半径是否相等利用toString()方法输出其半径。 package toString;/*** package:toString** Author jimmy-yan* Create 2024/10/25 14:29*/ public class GeometricObject {protected String color;protected double weight;public GeometricObject() {this.colorwhite;this.weight1.0;}public GeometricObject(String color, double weight) {this.color color;this.weight weight;}public String getColor() {return color;}public void setColor(String color) {this.color color;}public double getWeight() {return weight;}public void setWeight(double weight) {this.weight weight;} } package toString;/*** package:toString** Author jimmy-yan* Create 2024/10/25 14:32*/ public class Circle extends GeometricObject {private double radius;public Circle(){ // colorwhite; // weight1.0;radius1.0;}public Circle(double radius) { // colorwhite; // weight1.0;this.radius radius;}public Circle(String color, double weight, double radius) {super(color, weight);this.radius radius;}public double getRadius() {return radius;}public void setRadius(double radius) {this.radius radius;}//求圆的面积public double findArea(){return 3.14*radius*radius;}//重写equalsOverridepublic boolean equals(Object o) {if (this o) return true;if (o null || getClass() ! o.getClass()) return false;Circle circle (Circle) o;return Double.compare(circle.radius, radius) 0;}Overridepublic String toString() {return Circle{ radius radius };} } package toString;/*** package:toString** Author jimmy-yan* Create 2024/10/25 14:42*/ public class CircleTest {public static void main(String[] args) {Circle c1 new Circle(2.3);Circle c2 new Circle(red,2.0,2.4);System.out.println(c1.getColor().equals(c2.getColor())); //falseSystem.out.println(c1.equals(c2)); //falseSystem.out.println(c1); //Circle{radius2.3}} } 三、复习 this关键字的使用 this可以调用属性、方法构造器 this调用属性或者方法时理解为当前对象或者正在创建的对象 public void setName(String name){ //当属性名和形参名相同时必须使用this来区分this.namename; }public Person(String name){this.namename }this(形参列表)的方式表示调用当前类中其他的重载的构造器。 继承性 继承性的好处 减少了代码的冗余提高了复用性 提高了拓展性 java中继承性的特点 单继承性一个类只能继承一个父类 支持多层继承 基础class A extend B{} 理解子类就获取了父类中声明的全部的属性和方法。可能受封装性的影响不能直接调用。 方法的重写override和overwrite 方法的重载和重写的区别 重载两同一不同 重写 前提类的继承关系 子类对父类中同名参数方法的覆盖、覆写。 super的使用 super可以调用的结构属性、方法、构造器 super父类的 super调用属性和方法 a、如果子父类中出现了同名的属性此时使用super.的方式表明调用的是父类中声明的属性有权限的情况。 b、子类重写了父类的方法如果子类的任何一个方法中需要调用父类被重写的方法时需要使用super. super调用构造器 在子类的构造器中首行要么使用了”this(形参列表)“要么使用了”super(形参列表)“。 子类对象实例化过程熟悉 从结果说体现为继承性 从过程说子类调用构造器创建对象时一定会直接或间接的调用父类的构造器 以及父类的父类的构造器…直到调用到Object()的构造器。
http://www.zqtcl.cn/news/648927/

相关文章:

  • 秀洲住房与建设局网站徐州建设工程招投标官方网站
  • 做公司网站要注意哪些问题做章的网站
  • 南京建设网站维护洛阳最新通告今天
  • 网站名称创意大全wordpress公开课插件
  • 淮安市城市建设档案馆网站可以做网页的软件
  • 网站空间服务器wordpress 排除置顶文章
  • 有域名后怎么做网站邯郸做移动网站的地方
  • 商标可以做网站吗网站开发的大学生应届简历
  • 长沙长沙网站建设公司saas系统架构
  • 成都销售型网站长春财经学院多大
  • 手机自己制作表白网站app项目网络计划图怎么画
  • 品牌网站如何做seo浏览器正能量网址
  • 开封做网站哪家好网页设计制作网站大一素材
  • 河南网站域名备案莱芜新闻电视台节目表
  • 长春网站建设新格做天猫还是做网站推广
  • 新网站建设的感想安阳区号是什么
  • 余姚市城乡建设局网站wordpress 预览插件
  • 游戏开发和网站开发wordpress foreign trade
  • 网站设计 原型图html购物网站模板
  • 谷歌网站推广报价国产搜什么关键词最好看
  • 婚礼网站有哪些个人做网站需要什么条件
  • 深圳企业网站seo人才招聘网站建设
  • 谷歌下载seo是什么软件
  • 个人网站设计分析小程序在线制作平台
  • 网站开发 一般用什么语言vi视觉设计案例
  • 微信公众平台官方网官网seo优化找哪家做
  • 简约 网站模板网站目录链接怎么做
  • 国内地铁建设公司网站大连做网站外包
  • 微网站营销是什么网站图片上传代码
  • 外包公司做网站多少用vs做的网站怎么打开