自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVA面向对象06:抽象类与接口

抽象类的定义abstract可以用来修饰方法也可以修饰类,被abstrcat关键词修饰的类或方法都是抽象的 抽象类中可以有普通方法或抽象方法,但抽象方法一定存在于抽象类中 抽象类不可以使用new关键词来创建对象,只能通过继承方式 抽象方法没有方法的声明和方法体,只能由子类继承并重写来实现 若子类继承抽象类,子类就必须重写抽象类中所有的方法,要么子类也是抽象类 虽然抽象类无法创建对象,但是抽象类存在构造器父类Father// 父类是抽象类public abstract class Fa

2021-04-14 22:48:14 64

原创 JAVA方法05:多态

多态的概念同一方法,可以根据发送对象的不同采用多种不同的行为方式 一个对象的类型式确定的,但可以指向不同的引用对象多态存在的必要条件类与类之间存在继承关系 子类对父类方法进行重写 父类的引用指向子类的对象多态的注意点多态是方法的多态,属性没有多态 父类中使用private static final 修饰符修饰的方法无法进行重写,也就无法多态父类Fatherpublic class Father { public void run(){ System.o

2021-04-13 22:54:53 63

原创 JAVA面向对象04:方法的重写

方法重写@Overried概念方法重写存在于有继承关系的子类中 指子类继承父类的方法,方法的返回值,方法名,参数类型,个数都相同 若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。 如需父类中原有的方法,可使用super关键字,该关键字引用了当前类的父类 方法重写的权限:子类中的权限大于或等于父类的权限,(修饰符高低:private < 默认修饰符<protected < public)方法重写与方法重载区别方法的重载是方法的参数

2021-04-12 18:52:16 74

原创 JAVA面向对象03:继承

继承继承的本质是子类通过继承父类的方式获得父类的protected变量和方法使用权(is a)extends子类是父类的扩展,java中只有单继承,没有多继承,继承是类和类之间的一种关系 继承关系的两个类,一个为父类(基类),一个为派生类(子类) 所有类都继承Object类,Object类是所有类的父类定义Extending类public class Extending { // 父类的属性 public int money; private int h.

2021-04-12 16:05:22 91

原创 JAVA面向对象02:封装

封装程序设计需"高内聚,低耦合"高内聚就是类的内部数据自己操作完成,不允许外部干涉低耦合就是提供少量的方法给外部使用封装通常禁止直接访问一个对象中数据的实际表示,而应该通过接口来访问,将信息隐藏属性私有将类的属性私有化(private),不允许其他类直接使用get/set当其他类想要使用该类中的属性时,在该类中提供获取该类属性的方法get(),获取后提供set()方法给属性赋值封装测试类:Packagingpublic class Packaging { //

2021-04-12 14:53:13 34

原创 JAVA面向对象01:类与对象

类与对象的关系类是一种抽象的数据类型,它是对某一类型事物的整体描述/定义,但不代表具体的事物猫,狗,老鼠...都是Animal类 男人,女人,外星人..都是Person类 轿车,卡车,公交车..都是Car类对象是抽象概念的具体实例哈士奇,泰迪就是Animal类的具体实例 奥迪,奔驰就是Car类的具体实例 能够体现出具体特点,展现出功能,就是具体实例,而不是一个抽象的概念面向对象(OOP)面向对象编程的本质就是:以类的方式组织代码,以对象的形式封装数据 类是抽象的,对象是类的实例化

2021-04-12 12:05:59 45

原创 JAVA数组05:稀疏数组

稀疏数组个人理解打印出一个二维数组 // 定义长度为5的二位数组 int[][] arrayNum1 = new int[5][5]; // 给任意数组内数组赋值,数组以索引0为初始 arrayNum1[3][2] = 9; arrayNum1[2][3] = 7; /* 索引 0 1 2 3 4 第一列 第二列 第三列

2021-04-10 22:50:27 71

原创 JAVA数组04:冒泡排序

冒泡排序作为最经典排序算法,作为初学者一定要将该算法研究透彻,以下结论是本人通过别人的博客,以及动手草稿演算得出,个人理解有限,以最通俗易懂的方式解决:冒泡排序字面意思即为一瓶汽水有很多大小不一的气泡分散附着于瓶壁,这样就是一个无序数组模式,大的气泡先上浮,小的气泡在瓶底,这样就是按照从小到大顺序排列// 设定有一个无序数组: int[] number = {8,3,4,2};// 两两参数对比,每当前面一个数值大于后面一个数值,交换位置,直到最大一个数排到最后 初始数...

2021-04-09 23:24:50 63

原创 JAVA数组03:数组的三种使用方法

For-Each循环public static void main(String[] args) { // 定义数组并赋值 int[] array = {1, 3, 5, 7, 9}; // 使用For -Each循环 for (int arrays : array) { System.out.print(arrays + " "); } // 缺点是无法使用索引读

2021-04-08 23:03:48 114

原创 JAVA数组02:内存分析及三种初始化

JAVA内存 堆 存放new的对象及数组可以被别的线程共享,不会存放别等对象引用 栈 存放基本数据类型(会包含这个基本类型的具体数值)引用类型的变量(会存放这个引用在堆里面的具体地址) 方法区 可以被所有的线程共享包含了所有class和static变量当一个数组被声明时定义该数组基本类型,存放于栈里面通过new创建数组后,在堆内独立存放数组的长度// 通俗理解栈就是书名,堆是目录,数组变量是内容初始化的三种方式静态初始化//

2021-04-07 22:24:23 105 4

原创 JAVA数组01:数组的定义,声明和创建

定义数组是相同类型的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成 每一个数据称作一个数组元素,每个数组元素都可以通过下标来访问它,数组元素是从0开始声明首先必须先声明数组变量,才能使用数组,语法为:int [] number ; // 首选的方法int number2[]; // 不推荐使用创建使用new操作符来创建数组,语法为:int[] number = new int[10]; // 创建一个数组必须声明数组的长度数组的元素是通过

2021-04-07 22:01:17 109

原创 JAVA方法03:可变参数及递归思想

可变参数在方法声明中,在指定参数类型后加... 一个方法只能指定一个可变参数,它必须是方法的最后一个参数,让任何普通参数都必须在它之前声明

2021-04-06 21:22:11 66 1

原创 JAVA方法02:方法的重载及命令行传参

方法的重载重载就是在一个类中,有相同的函数名称,但形参不同的函数 方法重载的规则:方法名称必须相同 参数列表必须不同(参数类型,参数个数,参数排列顺序) 方法的返回值类型可以相同也可以不同 只是返回值类型不同不能够作为方法重载的判断实现理论: 方法名称相同时,编译器会根据调用方法的参数个数,参数类型逐一进行匹配,以选择对应的方法,如果匹配失败,编译器报错...

2021-04-05 22:35:48 76

原创 JAVA方法01:方法的定义和调用

方法的定义java方法是语句的集合,他们在一起执行一个功能方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中创建,其他地方引用方法的设计原则:在设计方法的时候最好保持方法的原子性,就是一个方法只完成一个功能,方便后面的拓展主方法public static void mian(String[] args){}解读:public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样 Java 虚拟机就可以找到 main() 方法,从而来运行javac程序。 s..

2021-04-05 18:46:12 128

原创 JAVA流程控制06:增强型for循环及break、continue的认识

增强型For循环主要用于数组或集合的遍历,语法如下:for(声明语句:表达式){ // 代码段}public static void main(String[] args) { // 定义一个数组 int[] number = {1,3,1,4}; for (int x : number){ System.out.println(x); } }Break、Continue的异...

2021-04-01 23:38:28 181

原创 JAVA流程控制05:for循环

for循环for循环语句是支持迭代的一种通用结构 for循环执行的次数在执行前就确定的for(初始化; 布尔表达式; 更新 ){ // 代码语句}例题一:计算0-100之间所有奇数和偶数的和public static void main(String[] args) { // 计算0-100之间奇数和偶数的和 int oddSum = 0;// 接收奇数 int evenSum = 0;// 接收偶数 /...

2021-03-31 23:19:44 84

原创 JAVA流程控制04:while基本循环结构

while循环while是最基本的循环,结构为:while(布尔表达式){ // 循环体}只要布尔表达式为true,循环会一直执行下去public static void main(String[] args) { int i = 0; int sum = 0; while (i<=100){ sum = sum + i; i++; } ...

2021-03-31 21:15:40 62

原创 JAVA流程控制03:switch选择结构

Switch多选择结构Switch case 语句判断一个变量与一系列值中某个值是否相等,每个值被称为一个分支switch (expression){ case value : // 语句 break; case value : // 语句 break; default: ...

2021-03-29 23:14:50 73

原创 JAVA流程控制02:if选择结构

If多选择结构语法if(布尔表达式1){ // 如果布尔表达式1的值为true执行代码}else if(布尔表达式2){ // 如果布尔表达式2的值为true执行代码}else if(布尔表达式3){ // 如果布尔表达式3的值为true执行代码}else{ // 如果以上布尔表达式都不为true执行代码}/* 某个班级进行成绩排名,满分为100分,90-99分为优秀,60-89分为优秀* 60分以下为不及格,使用if循环语句来执行*...

2021-03-29 21:20:50 46

原创 JAVA流程控制01:Scanner对象

Scanner对象基本语法Scanner input = new Scanner(System.in);通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般使用hasNext()与hasNextLine()判断是否还有输入的数据,例如:public static void main(String[] args) { // 创建Scanner类用于接收数据 Scanner input = new Scanner(S

2021-03-29 13:34:51 55

原创 JAVA基础02:变量

类变量写在类里面,方法外面,定义类变量时需强制性在数据类型前加上static修饰符声明,可全方法使用static int age=24;public static void main(String[] args) { System.out.println(age + "岁");}实例变量写在类里面,方法外面的变量,使用实例变量需要创建类本身的对象进行引用double isMoney = 4500;public static void main(String[]

2021-03-26 22:54:44 35

原创 JAVA基础01:数据类型

数据类型JAVA是强类型语言 要求变量的使用严格合乎规范,所有变量需要先定义后使用JAVA的数据类型分两大类基本类型(primitive type) 引用类型(reference type)基本数据类型:整数类型(byte,short,int,long),浮点类型(float,double),字符类型(char),boolean类型(true或false)引用数据类型:类,接口,数组 //JAVA中除去基本数据类型剩下都是引用类型基本数据类型...

2021-03-24 22:54:13 38

空空如也

空空如也

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

TA关注的人

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