首页 > 编程语言 > 详细

Java基础

时间:2020-08-03 15:54:36      阅读:103      评论:0      收藏:0      [点我收藏+]

Java基础

二进制

 

 技术分享图片

 

 

 

java特性和优势

技术分享图片

 

 

JDK

JDK是 Java 语言的软件开发工具包,主要用于移动设备嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

jRE

Java运行环境(Java Runtime Environment,简称JRE)是一个软件,由太阳微系统所研发,JRE可以让计算机系统运行Java应用程序(Java Application)。

JRE的内部有一个Java虚拟机(Java Virtual Machine,JVM)以及一些标准的类别函数库(Class Library)。

JVM

JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

编译型语言:

执行速度快、效率高;依靠编译器、跨平台性差些。

解释型语言:

执行速度慢、效率低;依靠解释器、跨平台性好。

 技术分享图片

技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 技术分享图片

技术分享图片

所有a=5;b=3;c=5

位运算

A = 0011 1100

B = 0000 1101

A&B = 0000 1100 全1出1,有0出0 A与B

A|B = 0011 1101 有1出1,全0出0 A或B

A^B = 0011 0001 相同出0,不同出1 异或

~B = 1111 0010 取反

左移 << 相当于*2

右移 >> 相当于/2

 

javaDoc文档

加在类上面就是类的注释

加在方法上面就是方法的注释

技术分享图片

 

 

技术分享图片

 

 

方法

### 何为方法

技术分享图片

 

 

方法的定义

Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段,- -般情况下,定义 一个方法包含以下语法:

技术分享图片

 

 

方法的调用

  1. 如果方法有static修饰符,就直接通过类名.方法名就可以调用了。在本类就直接方法名即可。

  2. 如果方法没有static修饰符,则需要实例化这个类 new,然后在通过对象名.方法

技术分享图片

 

 

方法的重载

  • 重载就是在一个类中,有相同的函数名称,但形参不同的函数。

方法的重载规则

  • 方法名称必须相同

  • 参数列表必须不同(个数不同或类型不同、参数排列顺序不同等)。

  • 方法的返回类型可以相同也可以不同

  • 仅仅返回类型不同不足以成为方法的重载。

实现理论

方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配,以选择对应的方法,如果匹配失败,则编译器报错。

可变参数

  • 形参:就是定义方法时()里面的参数,

  • 实参:就是调用方法时,所传递过去的参数

技术分享图片

 

 技术分享图片

 

 

数组

技术分享图片

 

 

Arrays类

技术分享图片

 

 

冒泡排序

  1. 比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置

  2. 每一次比较,都会产生出一个最大的,或者最小的数字;

  3. 下一轮则可以少一次排序

  4. 依次循环,直到结束!

技术分享图片

 

 

 

面向对象

  • 面向过程思想

    1. 步骤清晰简单,第一部做什么,第二步做什么...

    2. 面向过程适合处理一些较为简单的问题

  • 面向对象思想

    1. 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程思索。

    2. 面向对象适合处理复杂的问题,适合处理需要多人协作的问题!

  • 面向对象编程(Object-Oriented Programming,OOP)

  • 面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装数据)

面向对象三大特性

封装

  • 封装性在java当中的体现:

  1. 方法就是一种封装

  2. 关键字private也是一种封装 一旦使用private关键字进行修饰,那么本类当中仍然可以随意访问。 但是!超出了本类范围之外就不能在直接访问了 封装就是将一些细节信息隐藏起来,对于外界不可见

继承

  • 继承是多态的前提,如果没有继承,就没有多态

    • 继承主要解决的问题就是:共性抽取。

    • 继承关系当中的特点:

      1. 子类可以拥有父类的“内容”

      2. 重写:

        1. 需要有继承关系,子类重写父类的方法!

        2. 方法名必须相同

        3. 参数列表必须相同

        4. 修饰符:范围可以扩大但不能缩小,static、final、private修饰的方法不能重写

        5. 子类的方法和父类的方法务必要一致:方法体不同

        6. 为什么要重写:

          1. 父类的功能,子类不一定需要,或者不一定满足!

      3. 子类还可以拥有自己专有的内容

        • 在父子类的继承关系当中,如果成员变量或方法重名,则创建子类对象时,访问方式有两种:

          1. 直接通过子类对象访问成员变量: 等号左边是谁,就优先用谁,没有则向上找

          2. 间接通过成员方法访问成员变量: 该方法属于谁,就优先用谁,没有则向上找。 注意事项: 无论是成员方法还是成员变量,如果没有都是向上找父类,绝不会向下找子类的。

          技术分享图片

           

           

多态

  • 一个对象拥有多种形态:这就是对象的多态性

    1. 代码当中体现多态性:父类引用指向子类对象 格式:父类名称 对象名 = new 子类名称(); 或者:接口名称 对象名 = new 实现类名称()

    2. 对象向上转型其实就是多态写法:父类引用指向子类对象 对象一旦向上转型为父类,那么就无法调用子类原本持有的内容。【解决方案:向下转型】

    3. 对象向下转型其实就是一个【还原】的动作:格式 子类名称 对象名 = (子类名称)父类对象 含意:将父类对象,【还原】成本来的子类对象

     

    instanceof: 类型转换,引用类型,判断一个对象是什么类型

抽象类

技术分享图片

 

 

特点:

  1. 不能new这个抽象类,只能靠子类去实现它

  2. 抽象方法必须在抽象类中

  3. 抽象类的所有方法,继承了抽象类 它的子类,都必须要实现它的方法,除非它的子类也是抽象类

接口

  • 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。

  • 接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。 除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。

  • 接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。另外,在 Java 中,接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象

  • 接口就是多个类的公共规范。

  • 接口是一种引用类型,最重要的内容就是其中的:抽象方法

  • 接口的使用步骤:

    1. 接口不能直接使用,必须有一个“实现类”来“实现”该接口 格式:public class 实现类名称 implement 接口名称{ //...}

    2. 接口的实现类必须覆盖重写(实现)接口中所有的抽象方法。 实现:去掉abstract关键字,加上方法体大括号。

    3. 创建实现类的对象,进行调用 注意事项:

      1. 接口当中的抽象方法,修饰符必须是两个固定的关键字:public abstract

      2. 这两个关键字修饰符,可以选择性的省略。

      3. 如果实现类并没有覆盖重写接口中所有的抽象方法,那么这个实现类自己就必须是抽象类。

      4. 不能通过接口实现类的对象来调用接口当中的静态方法 正确用法:通过接口名称,直接调用其中的静态方法

      5. 接口当中也可以定义“成员变量”,但是必须使用 public static final 三个关键字进行修饰。 一旦使用final关键字进行修饰,说明不可改变。

      6. 接口是没有静态代码块或构造方法的

      7. 一个类的直接父类是唯一的,但是一个类可以同时实现多个接口

      8. 如果实现类所实现的多个接口当中,存在重复的抽象方法,那么只需要覆盖重写一次即可。

      9. 如果实现类实现的多个接口当中,存在重复默认方法,那么实现类一定要对冲突的默认方法进行覆盖重写

      10. 一个类如果直接父类当中的方法,和接口当中的默认方法发生了冲突,优先用父类当中的方法。

      11. 接口与接口之间是可以多继承的

Java基础

原文:https://www.cnblogs.com/129chao/p/13426492.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!