第八天:面向对象-1
步入正轨
学习内容
初识面向对象
面向过程思想
步骤清晰简单,第一步做什么,第二步做什么
面对过程适合处理一些较为简单的问题
面向对象思想
物以类聚,分类的思维模式,思考问题首先会解决哪些需要分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索
面向对象适合处理复杂的问题,适合处理需要多人合作的问题
对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路去处理
什么是面向对象
面向对象编程(Object-Oriented Programming , OOP)
面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据
抽象
三大特征:
封装
继承
多态
从认识论角度考虑是先有对象后有类。对象,是指具体的事物。类,是抽象的,是对对象的抽象
从代码运行的角度考虑是先有类后有对象。类是对象的模板
封装就是第一题、第二题,或者语文卷子、数学卷子
继承就是直角三角形继承自三角形,前者 ...
第七天:数组
你热爱的,就是生活
学习内容
数组的定义
数组是相同类型数据的有序集合
数组描述的是相同类型的若干个元素,按照一定的先后次序排列组合而成
其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问他们
要注意的是:数组是同一类数据的集合。下标从0开始
123456789101112131415161718192021222324252627282930313233package com.joker_yue.javalearn.array;public class arr01 { public static void main(String[] args) { int[] nums ; // 1.声明了一个nums数组 // int nums2[]; C/C++风格定义 nums = new int[10]; // 2.Java使用new来创建数组空间 // dataType[] dataRefVar = new dataType[arraySize]; ...
第六天:方法
真正喜欢的人和事,都值得我们坚持
学习内容
什么是方法
Java方法是语句的合集,它们在一起执行一个功能
方法是解决一类问题的步骤的有序组合
方法包含类或对象中
方法在程序中被创建,在其他地方被引用
设计方法的原则:方法的本意是功能块,就是实现某个动能的语句块的集合,我们设计方法的时候,最好保持方法的原子性。即:一个方法只完成一个功能,这样有利于我们后期的扩展。
1234System.out.println();//System为类//out为对象//println()为方法
1234567891011121314151617181920212223242526272829303132package com.joker_yue.javalearn.method;public class Method01 { //main方法 public static void main(String[] args) { int sum = add(1,2); System.out.println(a ...
第五天:程序结构
Less is more
学习内容
顺序结构
是最简单的基本结构,除非特别指明,否则就按照顺序一句一句执行
选择结构
if选择
1234if(boolean){ /*your code*/}// if单选择
123456if(boolean){ /*your code1*/} else { /*your code2*/}// if双选择
12345678910if(condition1){ /*your code1*/} else if(condition2) { /*your code2*/} else if(condition3){ /*your code3*/} else { /*your code4*/}// if多选择
switch选择
123456789101112131415switch(expression){ case value1 : /*your code1*/ break; case v ...
第四天:包的了解以及Java常用的包
无规矩不成方圆,无规范不能协作
学习内容
包机制
为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。
包语句的语法格式为:
1234package pkg1[.pkg2[.pkg3...]];//这句话一定要写在第一行!!!package com.joker_yue.javalearn.packagelearn;//如果创建了包,则在此包下所有的类方法中都需要加上package语句
一般利用公司域名倒置作为包名
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可以完成此功能。
12345import package1[.package2...].(classname|*);//如果为*,则导入此目录下所有类//注意,不仅可以导入库中的包,也可导入自己的import com.joker_yue.javalearn.packagelearn;//导入指定的类import com.joker_yue.javalearn.*; //导入所有的类
包的本质就是文件夹
Ja ...
第三天:基础语法
好戏开场了!
学习内容
注释
12345678910//单行注释/*多行 注释*///JavaDoc文档注释/** * @description HelloWorld * @author Joker_Yue */
标识符
Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符
标识符是大小写敏感的
Java是强类型语言
要求变量的使用都必须严格符合规定,所有的变量都必须先定义后才能使用
数据类型
注意:String不是关键字,是类
int : -231-1 ~ 231
byte: -27-1 ~ 27
最好完全避免使用浮点数进行比较
进制
二进制:0b
十进制
八进制:0
十六进制: 0x
123int i=10; //十进制int j=010; //八进制int k=0x10; //十六进制
一般输出
123System.out.println(); //输出整行System.out.print(); //普通输出System.out.print(&quo ...
第二天:Java历史、基础认识
梦开始的地方
学习内容
Java的优势:三高
高可用,高性能,高并发
详细来说
简单性
面向对象
可移植性
高性能
分布式
动态性
多线程
安全性
健壮性
Write Once,Run Anyway
Java 的发展
2004JDK1.4
2014JDK1.8
2021JDK1.11
跨平台原理: jvm虚拟机
JavaSE,JavaEE,JavaME
JavaSE :Java标准版,Java基础知识
JavaEE :开发企业级软件系统(B/s体系),(Web端,服务器开发)
JavaME :移动设备和嵌入式设备,如手机、机顶盒上运行的应用程序
B/s体系 :基于浏览器访问的网站
C/s体系 :桌面应用程序
Swing技术开发桌面应用程序:弃用,更多用c#
SSM,Spring企业级网站:电商类,比如淘宝,京东
JRE,JDK和JVM
JRE(Java Development Kit)是Java程序的运行时环境,包含JVM和运行时所需要的核心类库
JDK(Java Runtime En ...
第一天:Markdown
磨刀不误砍柴功
学习内容:
标题
生成标题可以通过在行前添加不同数量的#号来生成。
1# 我是一级标题
我是一级标题
1## 我是二级标题
我是二级标题
1### 我是三级标题
我是三级标题
1#### 我是四级标题
我是四级标题
1##### 我是五级标题
我是五级标题
1###### 我是六级标题
我是六级标题
注意:最大支持六级标题,字号从一级标题到六级标题依次减少。在最后一个#号后要与文字有空格。
文本样式
1*强调文本* or _强调文本_
强调文本 or 强调文本
1**加粗** or __加粗__
加粗 or 加粗
1==标记文本==
标记文本
1~~删除文本~~
删除文本
1>引用文本
引用文本
123引用文本的嵌套>文本1>>文本2
文本1
文本2
1下标文本 H~2~O
H2O
1上标文本 2^2^
22
列表
1234567891011121314151617- 项目 * 项目 + 项目 可以用-+*来进行标记项目,显示出来都是无序的列表(以 · 作标记 ...