1、方法

  普通方法:4个必要,1个可选

    1):必须有返回值类型,没有返回值用void表示

    2):必须有名字

    3):必须有()和形参

    4):必须有{}方法体

    5):可选static,表示静态的方法,可以用类名直接调用

2、类与对象

  在分析问题的时候,先有类后有对象,类是由成员变量和成员方法组成的,写代码的时候先有的类后有的对象。

  类是创建对象的模板,对象是类的具体实例。

  对象的创建和使用:

  1)new+构造函数创建对象,分配内存

  2)使用对象,不管是属性还是方法,都用对象.访问

  3)每个对象都有自己的属性

  4)所有的对象共享同一个方法-->方法中还会用到属性,这个属性是谁的---谁调用我,属性就是谁的

3、抽象类VS接口

  相同点:都不能产生对象          |    不同点:关键字不同 class interfacce    extends implement

      一般都有抽象方法         |        抽象类是一种特殊的类,类是数据和方法的有机结合,而接口偏功能没有普通数据

                       |        类只能单继承,而接口可以多实现,变相的实现了多继承

                       |        语义上的区别:继承是java OO的重要特点之一,语义比较严格,要符合is-a的关系

                                       而接口语义相对宽松,可以是is-a的关系,也可以是has-a的关系 

  关于接口: jdk1.8之后,接口中可以定义方法体,但是要加default,还可以写lamba表达式。  

4、抽象和多态

  *抽象

    java中两个地方需要用到抽象:1)分析事物事有客观对象抽象成类,分析他们的属性和方法,就可以定义class了

                  2)由类的共同属性和功能进一步向上抽取成其父类(抽象类)

   *多态 

    多态是多种形态的意思,是指在运行时按照对象的实际类型来确定调用的方法

    多态的三个必要条件:继承,重写,父类对象引用指向子类对象

5、重载(overload)和重写(override)

  1)重载是指同一个类中,多个同名方法,它们的参数签名不同(个数,顺序,类型)

  2)重写是指有继承关系的两个类中,子类对父类可访问的方法不满意,进行重写,父子方法返回值类型,名字,参数签名都必须一样。

      重写的子类方法的访问控制权限要不小于父类的

      重写的子类方法不能跑出新的checkedException,RuntimeException无所谓

javase-->基础知识(三)的更多相关文章

  1. java 基础知识三 java变量

    java  基础知识 三 变量 1.作用域 {} 包围起来的代码 称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序 ...

  2. Python基础知识(三)

    Python基础知识(三) 一丶整型 #二进制转成十进制的方法 # 128 64 32 16 8 4 2 1 1 1 1 1 1 1 例如数字5 : 101 #十进制转成二进制的方法 递归除取余数,从 ...

  3. JavaSE基础知识总结

    最近回顾了一下Java的基础知识,决定写成博客梳理一遍,主要是JavaSE部分最基础的知识,适合考前突击,学后回顾,不适合作为初学材料. 简单的列个目录吧: 一.数据类型和运算符 二.流程控制与数组 ...

  4. C# 基础知识 (三).主子对话框数值传递

    在C# winform编程中,我们经常会遇到不同窗口间需要传递数值的问题.比如数据库的应用,主窗口填写内容num1,点击按钮,在弹出的子窗口显示对应num1值;或者在子窗口填写新注册用户名信息,在主窗 ...

  5. 快速掌握JavaScript面试基础知识(三)

    译者按: 总结了大量JavaScript基本知识点,很有用! 原文: The Definitive JavaScript Handbook for your next developer interv ...

  6. Dapper基础知识三

    在下刚毕业工作,之前实习有用到Dapper?这几天新项目想用上Dapper,在下比较菜鸟,这块只是个人对Dapper的一种总结. Dapper,当项目在开发的时候,在没有必要使用依赖注入的时候,如何做 ...

  7. JavaSE 基础知识(常识概念 + 基础语法)问答总结/面试题 —— 讲给应届生的 Java 开源知识项目

    写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...

  8. javaSE基础知识(走向编程的门口)— 更新完毕

    前言:玩儿编程最重要的一点:不要怕麻烦,感觉是在浪费时间: 能动手绝不哔哔:只要脑袋不傻,编程都是"一看就会,一练就废",开始学的时候,就算再基础的东西都建议手敲一遍 要有囫囵吞枣 ...

  9. Java的基础知识三

    一.Java 集合框架 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个 ...

  10. JavaSE基础知识(3)—流程控制结构

    一.顺序结构 1.说明 程序从上往下依次执行,中间没有任何跳转或选择2.特点 变量必须遵循 “前向引用” (局部变量必须先声明.赋值,然后再使用!) 二.分支结构(条件) 1.说明 程序从两条或多条路 ...

随机推荐

  1. git 提交空文件夹

    git不能提交空文件夹 find . -type d -empty -execdir touch {}/.gitkeep \; -type -d 搜索文件夹 -empty 只搜索空文件夹 -execd ...

  2. 【翻译】如何在AJAX生成的内容中再次运行Prism.js

    一.前言 最近用一个十分轻量级的网页代码高亮Js库,应用到项目中发现了一个问题,对于静态的已经写好的代码,Prism的高亮插件是没有问题的,但是通过Ajax异步获取数据并修改DOM时发现,Prism高 ...

  3. noip2012 开车旅行

    此题100分的解法就是先预处理出每个点的下一个点之后倍增就好了.其实并没有太大难度. pbihao用双向链表写过了此题.在本地上我treap狂操他,but在rqnoj上,我依靠反复提交才A掉此题(最后 ...

  4. Linux下查看chm文件

    第一种方法.安装xchm,安装命令sudo apt-get install xchm,打开xchm,在终端下输入xchm. 第二种方法.安装kchmviewer,安装命令sudo apt-get in ...

  5. Visual SVN 5.01 Po jie 笔记

    最近搞项目要与几个同事一起coding,鉴于代码的合并和提交的问题,所以要搞个版本管理.由于是私有的项目,所以退git 求SVN了.装了乌龟和Visual SVN,才发现Visual SVN的客户端不 ...

  6. c# 面向方面编程

    AOP面向切面编程(Aspect Oriented Programming),是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.Spring框架用的核心技术就是AOP,是函数式编程的一 ...

  7. 行为驱动开发iOS <收藏>

    前段时间在design+code购买了一个学习iOS设计和编码在线课程,使用Sketch设计App,然后使用Swift语言实现Designer News客户端.作者Meng To已经开源到Github ...

  8. Axure RP动态面板操作

    参考资料: 动态面板实现banner的轮播效果

  9. linux大文件分割 split命令

    inux split 命令 功能说明:切割文件. 语 法:split [--help][--version][-][-b ][-C ][-l ][要切割的文件][输出文件名] 补充说明:split可将 ...

  10. Hibernate简易原生DAO的实现

    写在最前: 初学Hibernate,在尝试把JDBC项目移植到Hibernate的过程中,碰到了不少的麻烦,最让人心烦意乱的自然是SQL语句改动造成的代码混乱.其实不难,网上的解决方案有很多, 不过. ...