![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
On the way2019
这个作者很懒,什么都没留下…
展开
-
JAVA对象08:内部类
内部类内部类就是一个类的内部再定义一个类,比如,A类中定义了一个B类,那么B类相对A类来说就是内部类,而A类相对B类来说就是外部类了。成员内部类静态内部类方法内部类匿名内部类package com.oop.demo11;//一个Java类中可以有多个class类,但是只能有一个public class类public class Outer { private int id=10; public void out(){ System.out.println原创 2021-05-21 15:33:08 · 108 阅读 · 0 评论 -
JAVA对象07:接口
接口普通类:只有具体实现抽象类:具体实现和规范(抽象方法)都有!接口:只有规范!自己无法写方法~专业的约束!约束和实现分离:面向接口编程接口就是规范,定义的是一组规则,体现了现实世界中“如果你是…则必须能…”的思想。接口的本质是契约,就像我们人间的法律一样。制定好后大家都遵守。OO的精髓,是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计模式都只针对具备了抽象能力的语言(比如c++、java、c#等),就是因为设计模式所研究的,实际上就是如何合理的去抽象声明类的关键字是class,原创 2021-05-21 15:15:15 · 86 阅读 · 0 评论 -
JAVA对象06:抽象类
抽象类关键词 abstract抽象类,抽象的抽象:约束;抽象方法 ,约束,有人帮我们实现抽象方法,只有方法名字,没有方法的实现!不能new这个抽象类,只能靠子类去实现它:约束!抽象类中可以写普通方法抽象方法必须在抽象类中抽象类存在构造器抽象类存在的意义:将一些共同的方法属性抽象出来,提高代码开发效率抽象类的所有方法,继承了它的子类,都必须要实现它的方法,除非它也是一个抽象类package com.oop.demo09;//abstract 抽象类public abstract c原创 2021-05-21 14:46:42 · 138 阅读 · 0 评论 -
JAVA之static关键字
static关键字1. 静态变量静态变量,对于类来说,在内存中只有一个,它能被类中所有实例共享,多线程!静态变量可以直接使用 类名.变量名的方式调用非静态变量必须先new一个对象,然后通过对象来调用2.静态方法静态方法是与类一起加载的,它可以直接使用类名.方法名调用非静态方法可以去调用静态方法静态方法可以调用静态方法,不能调用非静态方法package com.oop.demo08;//staticpublic class Student { private stati原创 2021-05-21 14:24:45 · 94 阅读 · 0 评论 -
JAVA对象05:多态
多态即同一方法可以根据发送对象的不同而采用不同的行为方式。一个对象的实际类型是确定的,但可以指向对象的引用类型有很多(父类,有关系的类)多态存在的条件有继承关系子类重写父类方法父类引用指向子类注意:多态是方法的多态,属性没有多态性。instanceof(类型转换) 引用类型package com.oop.demo06;public class Person { public void run(){ System.out.println("run");原创 2021-05-21 11:28:06 · 136 阅读 · 0 评论 -
JAVA对象04:继承
继承继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模。extends的意思是“扩展”。子类是父类的扩展。JAVA中类只有单继承,没有多继承!继承是类与类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。继承关系的两个类,一个为子类(派生类),一个为父类(基类)。子类继承父类,使用关键字extends来表示。子类和父类之间,从意义上讲应该具有“is a”的关系(猫是一个动物)。object类super方法重写...原创 2021-05-21 10:08:49 · 42 阅读 · 0 评论 -
JAVA面向对象03:封装
封装该露的露,该藏的藏我们程序设计要追求高内聚,低耦合"。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。封装(数据的隐藏)通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。记住这句话就够了:属性私有,get/setpublic class Student { //属性私有 private String name; //学号 private int id; //学号原创 2021-05-20 21:04:05 · 108 阅读 · 0 评论 -
JAVA面向对象02
创建和初始化对象使用new关键字创建对象使用new关键字创建对象的时候,除了分配内存空间外,还会给创建好的对象进行默认的初始化以及对类中的构造器的调用。创建对象/学生类public class Student { //属性:字段 String name; int age; //方法 public void study(){ System.out.println(this.name + "在学习"); }}/*转载 2021-05-20 20:45:48 · 91 阅读 · 0 评论 -
JAVA面向对象01
Java面向对象oop面向对象和面向过程面向过程思想步骤清晰简单,第一步做什么,第二步做什么…面向过程适合处理一些较为简单的问题面向对象思想物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。面向对象适合处理复杂的问题,适合处理需要多人协作的问题。对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路去处理原创 2021-05-20 20:22:05 · 76 阅读 · 0 评论 -
JAVA基础12:JavaDoc生成文档
JavaDocjavadoc 命令是用来生成自己的API文档的参数信息@author 作者名@version 版本号@since 指明需要最早使用的jdk版本@param 参数名@return 返回值情况@throws 异常抛出情况原创 2021-05-18 08:56:44 · 137 阅读 · 0 评论 -
JAVA基础11:包机制
为了更好地组织类,Java提供了包机制,用于区别类名地命名空间包语法格式为:package pk1[.pk2[.pk3...]];一般利用公司域名倒置作为包名;com.baidu.www com.baike.wwwcom.zhang.xxx com.wang.xxx为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可完成此功能import package1[.package2...].(classname|*);...原创 2021-05-18 08:56:18 · 89 阅读 · 0 评论 -
JAVA基础10:三元运算符及小结
package operator;public class Demo07 { public static void main(String[] args) { int a = 10; int b = 20; a+=b; //a=a+b a-=b; //a-=b System.out.println(a); //字符串连接符 + ,String System.out.println(原创 2021-05-18 08:55:51 · 91 阅读 · 0 评论 -
JAVA基础09:逻辑运算符、位运算符
package operator;//逻辑运算符public class Demo05 { public static void main(String[] args) { // 与(and) 或(or) 非(取反) boolean a = true; boolean b = false; System.out.println("a && b:"+(a&&b)); //逻辑与运算:两个变量都为真,原创 2021-05-18 08:55:17 · 47 阅读 · 0 评论 -
JAVA基础08:自增自减运算符
package operator;public class Demo04 { public static void main(String[] args) { //++ -- 自增,自减 int a = 3; int b = a++; //执行完这行代码后,先给b赋值,再自增 int c = ++a; //执行完这行代码前,先自增,再给b赋值 System.out.println(a); //5原创 2021-05-18 08:54:53 · 50 阅读 · 0 评论 -
JAVA基础07:基本运算符
package operator;public class Demo02 { public static void main(String[] args) { long a = 123123123123123L; int b = 123; short c = 10; byte d =8; System.out.println(a+b+c+d); //Long System.out.println(.原创 2021-05-17 20:28:47 · 69 阅读 · 0 评论 -
Java基础06:变量、常量、作用域
变量变量是什么:就是可以变化的量!Java是一种强类型语言,每个变量都必须声明其类型。Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。type varName [=value] [{,varName[=value]}];//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型的变量。注意事项:每个变量都有类型,类型可以是基本类型,也可以是引用类型。变量名必须是合法的标识符。变量声明是一条完整的语句,因此每一个声明都必须以分号结束。变量作用域原创 2021-05-17 19:43:24 · 68 阅读 · 0 评论 -
Java基础05:类型转换
类型转换由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。//低------------------------------------------高//byte,short,char-->int-->long-->float-->double强制类型转换高–>低自动类型转换低–>高public class Demo04 { public static void main(String[] args) {原创 2021-05-17 17:37:18 · 51 阅读 · 0 评论 -
Java基础04:数据类型扩展
public class Demo02 { public static void main(String[] args) { //整数扩展 进制 二进制 0b 十进制 八进制0 十六进制0x int i = 10; int i2 = 010;//八进制0 int i3 = 0x10;//十六进制0x 0~9 A~F System.out.println(i); System.out.pr原创 2021-05-17 17:12:29 · 79 阅读 · 0 评论 -
Java基础03:数据类型
数据类型强类型语言要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用弱类型语言Java的数据类型分为两大类基本数据类型(primitive type)数值类型整数类型byte 占1个字节范围:-128-127short占2个字节范围:-32768-32767int占4个字节范围:-2147483648-2147483647long占8个字节范围:-9223372036854775808-9223372036854775807浮点类型float占4个字原创 2021-05-17 17:10:46 · 80 阅读 · 0 评论 -
Java基础02:标识符和关键字
关键字标识符注意点所有的标识符都应该以字母(A-Z或者a-z),美元符($),或者下划线开始首字符之后可以是字母(A-Z或者a-z),美元符($),或者下划线(_)或数字的任何字符组合不能使用关键字作为变量名或方法名标识符是大小写敏感的合法的标识符举例:age、$salary、_value、__1__value非法标识符举例:123abc、-salary、#abc可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音...原创 2021-05-17 16:45:32 · 76 阅读 · 0 评论 -
Java基础01:注释
注释Java中的注释有三种:单行注释多行注释文档注释/** * @author Zhang * @version 1.0 * @since 1.8 */public class Demo03 { public static void main(String[] args) { //单行注释 : 只能注释一行文字 // //输出hello,world System.out.println("Hello,World!");原创 2021-05-17 16:33:41 · 41 阅读 · 0 评论