- 博客(34)
- 收藏
- 关注
原创 封装详解
封装 该露的露,该藏的藏 我们程序设计要追求**“高内聚,低耦合”**。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。 封装(数据的隐藏) 通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。 记住这句话就够了:属性私有,get/set //类 private:私有 public class Student { //属性私有 private String name;//名字 private int
2020-12-07 23:08:21
213
原创 类与对象的关系
类是一种抽象的数据类型,它是对某一类事物整体描述)定义,但是并不能代表某一个具体的事物。 动物、植物、手机、电脑… Person类、Pet类、Car类等,这些类都是用来描述/定义某一类 具体的事物应该具备的特点和行为 对象是抽象概念的具体实例 张三就是人的一个具体实例,张三家里的旺财就是狗的一个具体实 例。 能够体现出特点,展现出功能的是具体的实例,而不是一个抽象的概 念。 创建与初始必对象 使用new关键字创建对象 使用ne.
2020-12-01 22:05:34
254
原创 回顾方法及加深
方法的定义 修饰符 返回类型 break:跳出switch,结束循环和return的区别 import java.io.IOException; //Demo01 类 public class Demo01 { //main 方法 public static void main(String[] args) { } /* 修饰符 返回值类型 方法名(...){ //方法体 reture 返回值; } */
2020-11-15 23:42:31
172
原创 JavaDoc
JavaDoc JDK帮助文档 javadoc命令是用来生成自己API文档的 参数信息 @author作者名 @version版本号 @since 指明需要最早使用的jdk版本 @param参数名 @return返回值情况 @throws 异常抛出情况 /** * @author zhangyuyang * @version 1.0 * @since 1.8 */ public class Doc { String name; /** * *
2020-11-08 21:55:19
238
原创 包机制
包机制 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间 包语句的语法格式为: package pkg1[. pkg2[. plkg...]]; 一般利用公司域名倒置作为包名 为了能够使用某-个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可 完成此功能 import package1[ . package...]. (classname |*); ...
2020-11-08 21:53:50
157
原创 面向过程&面向对象
面向过程&面向对象 面向过程思想 1、步骤清晰简单,第一步做什么,第二步做什么… 2、面对过程适合处理一些较为简单的问题 面向对象思想 1、物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。 2、面向对象适合处理复杂的问题,适合处理需要多人协作的问题! 对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路去处理。
2020-11-08 21:49:39
117
原创 冒泡排序
冒泡排序 public class ArrayDemo07 { public static void main(String[] args) { int[] a = {1,2,35,656,77,45,443,2}; int[] sort = sort(a);//调用完我们自己写的排序方法以后,返回一个排序后的数组 System.out.println(Arrays.toString(sort)); } //冒泡排序: /
2020-11-08 21:49:01
134
原创 稀疏数组
稀疏数组的介绍 当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方式是: 1、记录数组一共有几行几列,有多少个不同值 2、把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模 如下图:左边是原始数组,右边是稀疏数组 public class ArrayDemo08 { public static void main(String[] args) { //创建一个二维数组 11*11 0:没有棋子,
2020-11-08 21:48:00
686
原创 多维数组
多维数组 多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。 二维数组 int a[][] = new int[2][5]; Arrays类 数组的工具类java.util.Arrays 由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本的操作。 查看JDK帮助文档 Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名进行调用,而"不用"使用对象来调
2020-11-02 22:36:21
128
原创 数组的四个基本特点
数组的四个基本特点 其长度是确定的数组一旦被创建,它的大小就是不可以改变的。 其元素必须是相同类型,不允许出现混合类型。 数组中的元素可以是任何数据类型,包括基本类型和引用类型。 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象,Java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中的。 数组边界 下标的合法区间[0, length-1],如果越界就会报错; public static void main(Strin
2020-11-02 22:35:08
702
原创 2020-11-02
public class ArrayDemo04 { public static void main(String[] args) { int[] arrays = {1, 2, 3, 4, 5}; //JDK1.5; 没有下标 // for (int array : arrays) { // System.out.println(array); // printArray(arrays); int[] reverse = rev
2020-11-02 22:32:04
246
原创 数组的定义
数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组声明创建 首先必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法: dataType[ ] arrayRefVar;l/首选的方法 或 dataType arrayRefVar[];l/效果相同,但不是首选方法 Java语言使用new操作符来创建数组,语法如下: dataType[ ] arrayRe.
2020-11-01 17:50:39
702
原创 可变参数
可变参数 JDK 1.5开始,Java支持传递同类型的可变参数给一个方法。 在方法声明中,在指定参数类型后加一个省略号(….)。 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。 public static void printMax( double. . . numbers) f if ( numbers.length -= e) { System.out.println("No argument passed");return; } double resu
2020-11-01 17:50:04
193
原创 方法的重载
方法的重载 重载就是在一个类中,有相同的函数名称,但形参不同的函数。 方法的重载的规则: 方法名称必须相同。 参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)。 方法的返回类型可以相同也可以不相同。 仅仅返回类型不同不足以成为方法的重载。 实现理论: 方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配,以选择对应的方法,如果匹配失败,则编译器报错。 命令行传参 有时候你希望运行一个程序时候再传递给它消息。这要靠传递命令行参数给main()函数实现。 public
2020-11-01 17:49:21
306
原创 方法的定义
何谓方法 System.out.println(),那么它是什么呢? Java方法是语句的集合,它们在一起执行一个功能。 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就是一个方法只完成1个功能,这样利于我们后期的扩展。 方法的定义 Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段,一般情况下定义一
2020-10-26 22:37:02
571
原创 break continue
break continue break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用) continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。 关于goto关键字 goto关键字很早就在程序设计语言中出现。尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而,在break和continu
2020-10-25 22:23:59
130
原创 while循环
循环结构 while循环 do…while循环 for循环 在Java5中引入了一种主要用于数组的增强型for循环。 while循环 while是最基本的循环,它的结构为: while(布尔表达式){ //循环内容 } 只要布尔表达式为true,循环就会一直执行下去。 我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环 少部分情况需要循环一直执行,比如服务器的请求响应监听等。 循环条件一直为true就会造成无限循环【死循环】,我们正常的业务编程中应
2020-10-22 23:12:16
177
原创 For循环
For循环 虽然所有循环结构都可以用while或者do…while表示,但Java提供了另一种语句——for循环,使一些循环结构变得更加简单。 for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。 for循环执行的次数是在执行前就确定的。语法格式如下: for(初始化;布尔表达式;更新){ //代码语句 } 练习: public static void main(String[] args) { //用while和for循环输出1~1000之间能被5整除的数,并且每行
2020-10-22 23:11:35
140
原创 do...while循环
do…while循环 对于while语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。 do…while循环和while循环相似,不同的是,do…while循环至少会执行一次。 do { //代码语句 }while(布尔表达式); While和do-While的区别: while先判断后执行。dowhile是先执行后判断! Do…while总是保证循环体会被至少执行一次!这是他们的主要差别。 示例: public class DoWhlieDemo01 {
2020-10-22 23:11:03
360
原创 switch多选择结构
switch多选择结构 多选择结构还有一个实现方式就是switch case语句。 switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。 switch(expression){ case value : //语句 break;//可选 case value : //语句 break;//可选 //你可以有任意数量的case语句 default : //可选 //语句 } switch语句中的变量类型可以是: byte、short、int或者char。 从Java
2020-10-20 22:13:24
202
原创 顺序结构
顺序结构 JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。 顺序结构是最简单的算法结构。 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。 选择结构 if单选择结构 if双选择结构 if多选择结构 嵌套的if结构 switch多选择结构 if单选择结构 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示。 语法 //equals:判断字符串是
2020-10-19 23:35:42
175
原创 Scanner使用
Scanner对象 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入。 基本语法: scanner s = new Scanner(System.in); 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
2020-10-19 23:34:59
216
原创 运算符知识拓展
逻辑运算符 public class Demo05 { public static void main(String[] args) { // 与(and) 或(or) 非(取反) boolean a = true; boolean b = false; System.out.println("a && b:"+(a&&b)); //逻辑与运算,两个变量都为真,结果为true System
2020-10-19 23:34:03
119
原创 基本运算符
基本运算符 Java语言支持如下运算符: 算术运算符:+,-,*,/,%(取余;模运算),++(自增),–(自减) 赋值运算符:= 关系运算符:>,<,>=,<=,==,!= instanceof(不等于) 逻辑运算符: &&,||,! 位运算符:&,|,^,~,>>,<<,>>>(了解!! ! ) 条件运算符?: 扩展赋值运算符:+=,-=,*=,/= 返回值窗口:Alt+回车 算术运算符 public clas
2020-10-13 23:07:40
218
原创 变量、常量、作用域
变量 变量是什么:就是可以变化的量! Java是一种强类型语言,每个变量都必须声明其类型。 Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。 注意事项 每个变量都有类型,类型可以是基本类型,也可以是引用类型。 变量名必须是合法的标识符。 变量声明是一条完整的语句,因此每一个声明都必须以分号结束 变量作用域 类变量 实例变量 局部变量 public class Demo06 { //类变量 static static double salary
2020-10-12 22:04:04
286
原创 类型转换
类型转换 运算中,不同类型的数据先转化为同一类型,然后进行运算。 public class Demo04 { public static void main(String[] args) { //强制转换 (类型)变量名 高—低 int i = 128; byte b = (byte) i; //内存溢出 System.out.println(i); System.out.println(b); System.out.println("=============="); //自动转换 低-
2020-10-11 22:07:39
202
原创 数据类型面试题扩展
public class Demo03 { public static void main(String[] args) { //整数拓展: 进制 二进制0b 十进制 八进制0 十六进制0x int i = 10; int i2 = 012; //八进制0 int i3 = 0x20; //十六进制0x 0-9 A-F System.out.println(i); System.out.println(i2); System.out.println(i3); System.o
2020-10-11 21:00:55
89
原创 数据类型
数据类型 强类型语言 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用 Java的数据类型分为两大类 基本类型(primitive type) 引用类型(reference type) 如下示例 public class Demo02 { public static void main(String[] args) { //8大基本数据类型 //整数 int num1 = 10;//最常用 byte num2 = 127;
2020-10-10 21:34:01
105
原创 计算机
计算机 计算机computer,又名电子计算机,俗称电脑 什么叫计算机 1、能够按照程序进行,自动,处理海量数据的自动电子设备。 2、计算机由软件和硬件组成。 计算机的快捷键 ctrl+v 粘贴 ctrl+c 复制 ctrl+A 全选 ctrl+X 剪切 ctrl+z 撤销 ctrl+s 保存 alt+F4 关闭窗口 Dos的常用指令 打开cmd的方式 开始+系统+命名提示符 window键+r 输入cmd打开控制台 在任意的文件夹下面,按住shirt键+鼠标右键点击,在此处打开命名窗口 资
2020-10-10 21:32:14
105
原创 标识符和关键字
标识符和关键字 标识符注意点 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始,否则代码会报错 首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合 不能使用关键字作为变量名或方法名。 标识符是大小写敏感的 合法标识符举例: age.$salary、_value、_1_value 非法标识符举例:123abc、-salary、abc 可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很Low ...
2020-10-10 21:30:49
350
原创 JDK JRE JVM
JDK:java Development Kit Java开发者工具 JRE:Java Runttime Environment Java运行时环境 JVM: Java Virtual Machine Java虚拟机 Java开发环境的搭建 卸载JDK 删除java的安装目录 我的电脑-属性-高级系统设置-环境变量 删除环境变量里的java_HOME 删除path下关于java的目录 Dos确认是否删除(java-version) 安装JDK 百度搜索jdk8,登录网址下载 同意协议 下.
2020-10-10 21:28:36
116
原创 java的基础语法-注释
注释 java中的注释有三种 单行注释:只能注释一行文字://输入注释内容 多行注释:可以注释一段文字:/*XXXXX*/ 文档注释:javaDoc: /**XXXXXXX */ 如何IDEA设置注释格式 点击软件左上角的File 进入设置settings里面 进入后选择选项Editor(编辑器) 进入后可看到多种选项Font(字体样式) Color Scheme(模板样式) Code Style(代码样式) 这里我们选择Color Scheme,同时再选择j
2020-10-10 21:27:06
150
原创 Hello word
随便新建一个文件夹,存放我们的代码 新建一个java文件 文件后缀名为 .java Hello.java 编写代码 public class Hello{ public static void main(String[] args){ System.out.print("Hello,World"); } } 编译 javac java文件 javac+空格+文件名 会生成一个class文件 运行class文件,java class文件 java+空格+文件名 可能..
2020-10-10 21:23:41
93
原创 java程序的运行机制
java程序的运行机制 编译型和解释型(区别时机) IDEA的使用 新建一个项目文件夹 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zvknFGBp-1602335799945)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201007213212046.png)] 新建一个项目在src目录下书写代码 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来
2020-10-10 21:17:33
102
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅