自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 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 109

原创 JAVA对象07:接口

接口普通类:只有具体实现抽象类:具体实现和规范(抽象方法)都有!接口:只有规范!自己无法写方法~专业的约束!约束和实现分离:面向接口编程接口就是规范,定义的是一组规则,体现了现实世界中“如果你是…则必须能…”的思想。接口的本质是契约,就像我们人间的法律一样。制定好后大家都遵守。OO的精髓,是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计模式都只针对具备了抽象能力的语言(比如c++、java、c#等),就是因为设计模式所研究的,实际上就是如何合理的去抽象声明类的关键字是class,

2021-05-21 15:15:15 87

原创 JAVA对象06:抽象类

抽象类关键词 abstract抽象类,抽象的抽象:约束;抽象方法 ,约束,有人帮我们实现抽象方法,只有方法名字,没有方法的实现!不能new这个抽象类,只能靠子类去实现它:约束!抽象类中可以写普通方法抽象方法必须在抽象类中抽象类存在构造器抽象类存在的意义:将一些共同的方法属性抽象出来,提高代码开发效率抽象类的所有方法,继承了它的子类,都必须要实现它的方法,除非它也是一个抽象类package com.oop.demo09;//abstract 抽象类public abstract c

2021-05-21 14:46:42 140

原创 JAVA之static关键字

static关键字1. 静态变量静态变量,对于类来说,在内存中只有一个,它能被类中所有实例共享,多线程!静态变量可以直接使用 类名.变量名的方式调用非静态变量必须先new一个对象,然后通过对象来调用2.静态方法静态方法是与类一起加载的,它可以直接使用类名.方法名调用非静态方法可以去调用静态方法静态方法可以调用静态方法,不能调用非静态方法package com.oop.demo08;//staticpublic class Student { private stati

2021-05-21 14:24:45 95

原创 JAVA对象05:多态

多态即同一方法可以根据发送对象的不同而采用不同的行为方式。一个对象的实际类型是确定的,但可以指向对象的引用类型有很多(父类,有关系的类)多态存在的条件有继承关系子类重写父类方法父类引用指向子类注意:多态是方法的多态,属性没有多态性。instanceof(类型转换) 引用类型package com.oop.demo06;public class Person { public void run(){ System.out.println("run");

2021-05-21 11:28:06 137

原创 JAVA对象04:继承

继承继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模。extends的意思是“扩展”。子类是父类的扩展。JAVA中类只有单继承,没有多继承!继承是类与类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。继承关系的两个类,一个为子类(派生类),一个为父类(基类)。子类继承父类,使用关键字extends来表示。子类和父类之间,从意义上讲应该具有“is a”的关系(猫是一个动物)。object类super方法重写...

2021-05-21 10:08:49 43

原创 JAVA面向对象03:封装

封装该露的露,该藏的藏我们程序设计要追求高内聚,低耦合"。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。封装(数据的隐藏)通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。记住这句话就够了:属性私有,get/setpublic class Student { //属性私有 private String name; //学号 private int id; //学号

2021-05-20 21:04:05 108

转载 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 92

原创 JAVA面向对象01

Java面向对象oop面向对象和面向过程面向过程思想步骤清晰简单,第一步做什么,第二步做什么…面向过程适合处理一些较为简单的问题面向对象思想物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。面向对象适合处理复杂的问题,适合处理需要多人协作的问题。对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路去处理

2021-05-20 20:22:05 77

原创 JAVA基础12:JavaDoc生成文档

JavaDocjavadoc 命令是用来生成自己的API文档的参数信息@author 作者名@version 版本号@since 指明需要最早使用的jdk版本@param 参数名@return 返回值情况@throws 异常抛出情况

2021-05-18 08:56:44 138

原创 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

原创 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 93

原创 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 49

原创 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 51

原创 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 71

原创 Java基础06:变量、常量、作用域

变量变量是什么:就是可以变化的量!Java是一种强类型语言,每个变量都必须声明其类型。Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。type varName [=value] [{,varName[=value]}];//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型的变量。注意事项:每个变量都有类型,类型可以是基本类型,也可以是引用类型。变量名必须是合法的标识符。变量声明是一条完整的语句,因此每一个声明都必须以分号结束。变量作用域

2021-05-17 19:43:24 70

原创 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 52

原创 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

原创 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 81

原创 Java基础02:标识符和关键字

关键字标识符注意点所有的标识符都应该以字母(A-Z或者a-z),美元符($),或者下划线开始首字符之后可以是字母(A-Z或者a-z),美元符($),或者下划线(_)或数字的任何字符组合不能使用关键字作为变量名或方法名标识符是大小写敏感的合法的标识符举例:age、$salary、_value、__1__value非法标识符举例:123abc、-salary、#abc可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音...

2021-05-17 16:45:32 77

原创 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

原创 常见Dos命令

常见Dos命令打开cmd的方式开始+系统+命令提示符win键+R 输入cmd 打开控制台(推荐使用)在任意文件夹下面,按住shift键 + 鼠标右键点击,在此处打开命令行窗口资源管理器的地址栏前面加上 cmd 路径管理员方式运行选择以管理员方式运行常用的Dos命令#盘符切换 E:#查看当前目录下的所有文件 dir#切换目录 cd /d E:\IDE#返回上一级 cd ..#清理屏幕 cls (clear screen)#退出终端 exit#查看电

2021-05-17 09:38:56 212

原创 Windows常用快捷键

Windows常用快捷键Ctrl + C:复制Ctrl + V:粘贴Ctrl + A:全选Ctrl + X:剪切Ctrl + Z:撤销Ctrl + S:保存Alt + F4:关闭窗口Win + R : 打开命令行窗口Win + E :打开我的电脑Ctrl + shift + esc:打开任务管理器Ctrl + tab:切换应用程序Shift + delete :永久删除...

2021-05-17 09:23:20 71

原创 MarkDown语法

Markdown学习标题:##二级标题###三级标题####四级标题字体Hello,World!一个*写中间 斜体两个**写中间粗体Hello,World!Hello,World!Hello,World!引用(>)Hello World!分割线(- - -)(***)图片超链接点击跳转列表ABCABC表格姓名性别生日张三男1997.1.1代码public class Hello{ publi

2021-05-17 09:11:16 32

原创 编程题之设计LRU缓存结构

编程题之设计LRU缓存结构题目描述:设计LRU缓存结构,该结构在构造时确定大小,假设大小为K,并有如下两个功能:set (key, value):将记录(key, value)插入该结构get(key) :返回key对应的value值[要求]set和get方法的时间复杂度为O(1)。某个key的set或get操作一旦发生,认为这个key的记录成了最常使用的。当缓存的大小超过K时,移除最不经常使用的记录,即set或get最久远的。若opt=1,接下来两个整数下x,y,表示set(x,

2021-05-12 20:40:54 155

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除