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. Linux 下 ---ThinkPHP 图片上传提示:上传根目录不存在!请尝试手动创建

    2016年11月15日11:15:47 Windows下如果碰到如此问题,要看文件保存根路径里的rootpath,比如ThinkPHP框架里config.php文件里的的参数配置: //文件上传相关配 ...

  2. [原创] C# dynamic拼接Json串

    using Newtonsoft.Json; 之前拼接两个json串,是用的这样的代码 , json1.Length - ); json2 = json2.Insert(json2 - , tmp); ...

  3. sql笨办法同步数据

    Helpers.SqlHelper sqlHelper = new Helpers.SqlHelper("server=***;database=Cms;user id=sa;passwor ...

  4. Gulp基础

    1.什么是gulp? gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器. 2.为什么使用gulp? gulp不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工 ...

  5. js 查找树节点 数组去重

    //查找树节点function findData(curOrg, id) { var array = []; if ((typeof curOrg == 'object') && (c ...

  6. Codeforces Round #354 (Div. 2) ABCD

    Codeforces Round #354 (Div. 2) Problems     # Name     A Nicholas and Permutation standard input/out ...

  7. Ubuntu下安装QQ22013

    近期闲来无事,把退役的笔记本系统换成了Ubuntu. 系统安装异常的顺利,神速的安装完成.玩弄一会发现总是缺少了点什么,呆了半天发现缺少了企鹅. 由于对Ubuntu系统不了解,安装QQ着实让我头疼了半 ...

  8. EBS 中经常用到的一些值集

    名称                                 值集                                                                ...

  9. vue DatePicker vue2.0的日期插件

    一个用vue2.0写的日期控件,可以支持简单的年月日选择.地址:https://github.com/Stevenzwzhai/vue-datepicker. 首先是关于日期对象的使用,基本就是日期的 ...

  10. centos6.5 mysql-server 5.1.73启动失败

    yum install mysql-server 安装mysql服务端会把相应的客户端也装上 service mysqld start  启动mysql服务 解决办法: 1.chomod 777  / ...