美文网首页
面向对象-概念理解

面向对象-概念理解

作者: WYZ_8db0 | 来源:发表于2019-03-25 00:31 被阅读0次

继承

继承的概念

类的公共属性【字段,方法】

.把公共的属性提取出来形成一个公共的类,让其他的类去继承:减少代码的冗余度

继承的语法

继承的语法:

class A{}

class B extends A{}

B这个类继承到了A类

可以继承哪些

非私有的字段和普通方法

java中继承特定

Java中类的继承只能够是单继承:

可以支持多重继承【间接父类:类是可以有老祖宗的】

.每一个类都有一个直接父类【一个人一定是有亲爹的】

如果没有看到显示的继承代码,那么就隐式继承就Object

覆写

为什么要方法覆写

父类自带的方法无法满足子类需求

方法覆写的基本语法

方法名,形参,返回值不变

方法覆写的细节

1)保证子类方法和父类方法的方法签名(方法名+参数列表)一致;

2)访问权限 : 子类方法的访问权限(修饰符)不能够比父类方法的访问权限更低;

pirvate<默认不写<protected<public  小--->大

3)static方法不能够被覆写 : java规定

面向对象的角度去理解:

类级别

对象级别

4)返回值类型 : 子类方法的返回值类型可以是父类方法的返回值类型的子类或者相等

问题代码:  int long根本不是类,也不是同一种类型,int也不是long的子类

5)方法主体 :  方法覆写,子类方法和父类方法主体是否可以一样, 可以! 但是没有什么暖用!

方法覆写总结

就近原则:如果子类自己里面已经有了对应的函数,调用自己的

.如果子类覆写的方法,名字或者其他不符合覆写规则,不是覆写了!

注解:Override:验证当前的这个方法是否是在覆写父类中的方法

注释:给程序员看的

注解:给程序看的:

现在对于注解:此处学会用,感受,未来会专项学习的

接下来覆写会犯得错误:明明叫你复制,偏偏要自手写.....

Object类

Object的引入

所有的对象及数组,都可以调用Object类中的,非私有的方法

介绍Object里的方法

hashCode() ,toString(),  equals()等

覆写Object中的toString方法

/*覆写toString方法*/

public String toString(){

return name+"------"+id;

}

1.覆写toString的意义?

1.为了获得对象的字段信息的字符串描述

2.未来:用自己写的类:还有可能用别人写的类

1.System.out.println(stu);

1.打印的是地址值:说明类没有覆写toString

2.打印的是对象信息:说明一个类是覆写了toString

3.往后开发中:写类:什么时候需要我们去覆写toString

1.用别人的类:不需要因为那是别人的代码

2.自定义类的时候:需要覆写toString

覆写equals方法

public boolean equals(Object obj){

/*return this.name==obj.name&&this.id == obj.id;

obj:Object类型:编译只看类型不看值:Object根本没有name属性,id属性

怎么搞:明明知道obj在使用的收,传入的是stu2

还原真实类型:数据类型转换

研究完成:==  equals区别之后:分析下面代码有不有问题?

  return this.name == stu2.name&&this.id == stu2.id;

name字段:是String类型:引用数据类型  String 类  值应该是对象String str = "字符串";

name字段是一个String类型的对象,name字段应该调用自己的equals方法

*/

Student stu=(Student)obj;//强制类型转换

return this.name==stu.name&&this.id==stu.id;//返还判断结果

equals和==号的区别

equals比较的是对象地址值

==比较的是值

访问权限修饰符

权限修饰符的介绍

权限修饰符:private  <默认不写(注意不要添加default修饰)< protected <  public

作用:主要是控制类以及类中成员的访问权限

权限修饰符内容测试

public默认        ①可以修饰类[内部类 和 外部类]

 private  protected①不能够修饰类外部类

都不能够修饰局部变量

权限修饰符的使用原则

如果不希望别访问,私有化private权限

如果希望别人访问,提供公共的权限public

如果特殊情况:权限由小到大设置

相关文章

  • 面向对象的三大基本特征和五大设计原则

    1、面向对象概念 1.1、理解面向对象 面向对象是相对面向过程而言; 面向对象和面向过程都是一种思想; 面向过程:...

  • 面向对象-概念理解

    继承 继承的概念 类的公共属性【字段,方法】 .把公共的属性提取出来形成一个公共的类,让其他的类去继承:减少代码的...

  • 谈一谈javascript面向对象

    从今天起我们开始讨论javascript的面向对象 面向对象概念理解 面向对象语言有个标志=>它们都具有类的概念,...

  • 类与对象的哲学关系

    从C到C++的发展历程可以全面了解面向过程到面向对象的过程 面向对象的概念: 理解面向对象: ...

  • JavaScript 面向对象入门

    面向对象的概念 1、概念: 从编程思想角度理解:面向过程的编程思想,关注解决问题的步骤;面向对象的编程思想,关注...

  • 面向对象, equals与 ==区别演示,print与print

    一. 面向对象 1.理解面向对象的概念 类与对象 三大特征:封装示例封装演示 面向对象: 在调用对象时,除了要指定...

  • 面向对象的思想

    1. 面向对象基本概念 面向对象(Object Oriented,OO)是软件开发方法面向对象是一种对现实世界理解...

  • AOP(一)---什么是AOP

    要理解AOP我们先要理解其他一些概念: 面向过程编程 面向对象编程 面向切面编程 面向过程编程OPP 面向过程的编...

  • 面向对象编程

    面向对象的理解 JavaScript不区分类和实例的概念,而是通过原型(prototype)来实现面向对象编程。这...

  • 概念理解1:面向对象 面向接口

    面向对象 把一组数据结构合和处理它们的方法组成对象(object),把相同行为的对象归纳为类,通过类的封装隐藏内部...

网友评论

      本文标题:面向对象-概念理解

      本文链接:https://www.haomeiwen.com/subject/skrmvqtx.html