<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ilzy957的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ilzy957</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ilzy957]]></copyright><item><title><![CDATA[Java 接口初级理解]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/124164793</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/124164793</guid><author>ilzy957</author><pubDate>Thu, 14 Apr 2022 09:55:15 +0800</pubDate><description><![CDATA[接口

接口只有规范，只做约束，约束和实现分离。
接口定义的是一组规则，且里面方法默认为抽象，不存在方法体，由其他类进行实现。
声明的关键词为interface
接口里面的方法通过实现类实现，使用implements关键词修饰，语法规则：修饰符 class 接口名+Impl implement 接口名。
实现了接口的类，必须重写接口中所有方法。
接口是一组规范，其内属性和方法默认均为public修饰，且属性均为常量，可以被任何人访问。接口不实现方法，而是定义方法，交给其余的类进行实现，可以理解接口是产品设计]]></description><category></category></item><item><title><![CDATA[Java static关键字]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/124114978</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/124114978</guid><author>ilzy957</author><pubDate>Tue, 12 Apr 2022 08:43:54 +0800</pubDate><description><![CDATA[static关键字
实例：
Student类：
public class Student {
    private static int age; // 静态变量
    private double score;  //非静态变量
    public static void main(String[] args) {
        Student s1 = new Student();
        System.out.println(Student.age);
        //System]]></description><category></category></item><item><title><![CDATA[Java的继承与方法重写]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/124057693</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/124057693</guid><author>ilzy957</author><pubDate>Sat, 09 Apr 2022 11:15:01 +0800</pubDate><description><![CDATA[Java的继承


继承的本质是对一批类的抽象。


extends关键字，意为拓展，其内子类是对父类的扩展。public class Student extends Person，意为Student类继承了Person的所有公开属性，以及方法。


继承属于类之间的一种关系，此外还有依赖、组合聚合等。


Java中只有单继承，没有多继承，就是一个子类只能有一个父类。


修饰符：

public：公共的  可继承
private：私有的   不可继承
default：默认的    可继承
protect]]></description><category></category></item><item><title><![CDATA[Java的封装]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/124057669</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/124057669</guid><author>ilzy957</author><pubDate>Sat, 09 Apr 2022 11:12:33 +0800</pubDate><description><![CDATA[java的封装

程序设计应追求高内聚低耦合。意为类的内部数据操作细节自己完成，不允许外部干涉，同时仅暴露少量方法外界使用。也即是属性私有.
封装主要针对属性而言，使用get/set方法区操作属性
封装的意义：

1.提高程序的安全性，保护数据。
2.隐藏代码的实现细节
3.统一接口，使用同一的方法调用。
4.提升系统的可维护性。



封装代码实例：
Student类：
public class Student {
    //属性：姓名，性别，学号，学习（），睡觉（）
    private Strin]]></description><category></category></item><item><title><![CDATA[Java对象的创建与初始化以及构造器]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123993902</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123993902</guid><author>ilzy957</author><pubDate>Wed, 06 Apr 2022 16:42:20 +0800</pubDate><description><![CDATA[类与对象的关系


类是一种抽象的数据类型，是对某类食物的整体定义及描述，是一个概念体，比如cat类，person类，dog类。


对象属于抽象的概念的具体实例，例如李二是person类的一个对象，一只xxx的波斯猫是cat类的一个对象，一只xxx的田园犬就是dog类的一个对象。这些对象可以体现出具体的特点和功能，并非抽象的概念题。


创建与初始化对象


使用new 关键字创建对象，可以分配内存空间，给对象设置默认的初始化值，以及对类中构造器的调用。


实例：

Student类：



//一个类]]></description><category></category></item><item><title><![CDATA[Java面向对象思想与方法回顾]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123985108</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123985108</guid><author>ilzy957</author><pubDate>Wed, 06 Apr 2022 11:01:15 +0800</pubDate><description><![CDATA[什么是面向对象


面向过程思想：

类似线性流程，一步一步走。



面向对象思想：


分类的思维模式，解决问题需要什么分类，然后分门别类的解决。


属性+方法=类




面向对象编程-Object-OrientedProgramming，OOP


面向对象变成的本质就是，以类的方式组织代码，以对象组织（封装）数据


三大特性：封装、继承、多态。




认识论中先有对象后有类，对象是具体的事物，类是对对象的抽象


代码运行角度先有类再有对象，类是对象的模板。


回顾方法的定义及调用
方法的]]></description><category></category></item><item><title><![CDATA[Java稀疏数组及实例演示]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123956302</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123956302</guid><author>ilzy957</author><pubDate>Mon, 04 Apr 2022 16:51:46 +0800</pubDate><description><![CDATA[稀疏数组


当数组中大部分元素为0或者为同样数值时，可以使用稀疏数组保存。


稀疏数组处理方式：

记录数组有几行几列，有多少个不同值。
把具有不同值的元素和行列及值记录在一个小规模的数组内，缩小原数组规模。



以下为一个简单示例：



该处示例意为，图左中原数组为一个6行7列的拥有8个有效值的数组，经过处理，展示为图右。
第一行记录数组基本信息，后续行记录每个有效元素坐标和数值。

实例：

创建一个二维数组，11*11   0：表示没有棋子，1：表示黑棋子  2：表示白棋子，现数组的[1][2]]></description><category></category></item><item><title><![CDATA[Java数组之Arrays类]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123949341</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123949341</guid><author>ilzy957</author><pubDate>Mon, 04 Apr 2022 10:04:16 +0800</pubDate><description><![CDATA[Arrays类

数组自带的工具类：java.util.Arrays，可以对数组进行一些基本的操作，比如输出，排序等。
Arrays类里面的方法均为static修饰的静态方法，因此可以直接使用类名调用，而不必使用对象来调用。

实例：
package com.ilzy.blog.array;
import java.util.Arrays;
public class ArrayTest6 {
    public static void main(String[] args) {
        int[]]]></description><category></category></item><item><title><![CDATA[数组的基本特点和使用]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123933768</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123933768</guid><author>ilzy957</author><pubDate>Sun, 03 Apr 2022 10:31:47 +0800</pubDate><description><![CDATA[数组4个基本特点

长度是确定的，一旦被创建，大小不可改变。
其中元素必须是相同类型，不能出现混合类型。
数组中元素可以是任何数据类型，包括基本类型和引用类型。
剩数组变量属于引用类型，也可以看做对象，其中的每个元素相当于该对象的成员变量。数组本身即是对象，Java中对象放在堆中，因此数组无论保存原始类型还是其他对象类型，数组对象本身就是在堆中。

数组的边界

下标的合法区间：[0,length-1]，如果越界会报错。
ArrayIndexOutOfBoundsException：表示数组下标越界异常！
]]></description><category></category></item><item><title><![CDATA[Java数组的创建与初始化]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123925059</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123925059</guid><author>ilzy957</author><pubDate>Sat, 02 Apr 2022 17:15:23 +0800</pubDate><description><![CDATA[数组的创建与初始化
1.数组的创建
数组基本知识


数组是相同类型数据的有序集合，按照一定的先后次序排列组合而成。


数组的每一个数据称为一个数组元素，每个数组元素可以通过一个下标来访问。


必须先声明数组变量，才能在程序中使用数组。


创建格式：

首选方法：dataType[]  arrayRefVar;
效果相同的次选方法：dataType arrayRefVar[];



Java语言使用new操作符创建数组，语法： dataType[]  arrayRefVar = new dataTy]]></description><category></category></item><item><title><![CDATA[Java的递归]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123925038</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123925038</guid><author>ilzy957</author><pubDate>Sat, 02 Apr 2022 17:14:54 +0800</pubDate><description><![CDATA[递归

递归就是A方法调用自己。
递归可以把大型复杂的问题层层转化为同原问题相似的规模较小的问题来求解，仅需少量的程序就可描述出解题过程所需要的多次重复运算。
递归如果调用太多，会栈溢出，因此只能用于部分场景。
递归结构的两个部分：

递归头：什么时候不调用自身方法，如果无头，进入死循环。
递归体，什么时候调用自身方法。



死循环实例：
public class Test3 {
    public static void main(String[] args) {
        Test3 test]]></description><category></category></item><item><title><![CDATA[Java可变参数]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123925028</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123925028</guid><author>ilzy957</author><pubDate>Sat, 02 Apr 2022 17:14:07 +0800</pubDate><description><![CDATA[可变参数

自JDK1.5之后，Java支持传递同类型可变参数给一个方法。
在方法的声明中，在指定参数类型后加一个省略号
一个方法中只能指定一个可变参数，它必须是方法的最后一个参数，别的普通参数必须在其前面声明。

实例：
public class Test1 {
    public static void main(String[] args) {
        Test1 test1 = new Test1();
        test1.test(1,2,3,6);//传参必须要是规定的类型，因]]></description><category></category></item><item><title><![CDATA[Java方法的重载]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123907174</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123907174</guid><author>ilzy957</author><pubDate>Fri, 01 Apr 2022 20:36:53 +0800</pubDate><description><![CDATA[方法的重载与命令行传参
1.方法重载


重载就是在一个类中，有相同的函数名称，但形参不同。


方法重载的规则：

方法名称必须相同。
参数列表必须不同（个数不同、类型不同、或者参数排列顺序不同均可）
方法的返回类型可以相同也可以不同。
仅返回类型不同不能构成方法重载。



方法名称相同是，编译器会根据调用方法的参数个数，参数类型等逐个匹配，若匹配失败，编译器报错。其中，方法被赋值的变量类型不参与匹配过程。


实例：
public class MethodTest2 {
    public stat]]></description><category></category></item><item><title><![CDATA[Java方法之定义和调用]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123907153</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123907153</guid><author>ilzy957</author><pubDate>Fri, 01 Apr 2022 20:36:06 +0800</pubDate><description><![CDATA[方法的定义和调用
1.什么是方法


语法：  修饰符   返回值类型  方法名（参数类型 参数名）{
…
方法体
…
return  返回值；
}


return不仅可以返回值，而且在返回后也会直接结束方法。


方法被调用时传递值给参数，这个值被称为实参或变量。参数列表为方法的参数类型、顺序和参数的个数。


方法的参数：形式参数和实参。



形式参数：方法被调用时用于接受外界输入的数据，也即是定义时的参数。
实参：调用方法时实际传递给方法的数据，也是写在调用处，依照格式传递给方法的实际数据。

加]]></description><category></category></item><item><title><![CDATA[break、continue和流程实例]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123907095</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123907095</guid><author>ilzy957</author><pubDate>Fri, 01 Apr 2022 20:33:42 +0800</pubDate><description><![CDATA[中断和简单流程实例
1.break 和continue

break可用于任何循环语句主体部分，用于强制退出循环，不执行剩余语句，直接结束进程。
continue用在循环中，用于终止某次循环过程，也即是跳过后续语句到开头，判定是否执行下一次循环。
实例：

public class BreakTest1 {
    public static void main(String[] args) {
        int i=0;
        while (i&lt;100){
            i]]></description><category></category></item><item><title><![CDATA[Java循环结构]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123855855</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123855855</guid><author>ilzy957</author><pubDate>Wed, 30 Mar 2022 20:21:37 +0800</pubDate><description><![CDATA[Java循环结构
while循环


语法：while（布尔表达式）{
//循环内容
}


布尔表达式为true，循环会一直执行，但是大多数情况下需要有一个失效方式终止循环。


少部分情况下需要一直执行，比如服务器监听。


实例：
public class WhileTest1 {
    public static void main(String[] args) {
        //输出1-100
        int i = 0;
        while (i&lt;100){
   ]]></description><category></category></item><item><title><![CDATA[java顺序和选择结构]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123846829</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123846829</guid><author>ilzy957</author><pubDate>Wed, 30 Mar 2022 15:03:25 +0800</pubDate><description><![CDATA[java顺序和选择结构
顺序结构

顺序结构是Java的基本结构，除非特别指明，否则一步步执行。
语句与语句之间，框与框之间自上而下执行，由若干个依次执行的处理步骤组成，任何算法结构的基本结构。
基本示例：

public class Sequence {
    public static void main(String[] args) {
        System.out.println("hello1");
        System.out.println("hello2");
      ]]></description><category></category></item><item><title><![CDATA[Java流程控制-scanner]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123839310</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123839310</guid><author>ilzy957</author><pubDate>Wed, 30 Mar 2022 10:08:42 +0800</pubDate><description><![CDATA[Java流程控制-scanner
Scanner对象

Scanner类可以获取用户的输入，通过其next()与nextLine（）方法获取输入的字符串，读取前使用hasNext（）与hasNextLine（）判断是否还有输入的数据。
凡是属于IO流（intput和output）的类如果不关闭会一直占用资源，必须使用完立刻关闭。

next（）

一定要读取到有效字符才可以结束输入。
对输入有效字符前遇到的空白，该方法会自动将其去掉。
只有输入有效字符后才能将其后的空白作为分隔符或者结束符。
该方法不能得到]]></description><category></category></item><item><title><![CDATA[Java包机制和文档注释]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123827278</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123827278</guid><author>ilzy957</author><pubDate>Tue, 29 Mar 2022 17:31:24 +0800</pubDate><description><![CDATA[Java包机制和文档注释
Java包机制

类似于不同文件夹里同名文件机制。
语法格式：package pkg1[.pkg2[.pkg3…]]
一般利用公司域名倒置作为包名，如www.baidu.com为com.baidu.www
为了导入其他成员的包，使用import，并且必须写在自己的包下面。例如:import com.ilzy.blog.test.test1
虽然不同包之间可以使用同样的文件名，但尽量不要重复，否则导入将会报错。
.*可以导入包内所有类。

JavaDoc
语法格式和参数信息：
   ]]></description><category></category></item><item><title><![CDATA[Java运算符]]></title><link>https://blog.youkuaiyun.com/ilzy957/article/details/123823613</link><guid>https://blog.youkuaiyun.com/ilzy957/article/details/123823613</guid><author>ilzy957</author><pubDate>Tue, 29 Mar 2022 15:50:24 +0800</pubDate><description><![CDATA[Java运算符
计算机原码、反码、补码定义


原码表示法规定：用符号位和数值表示带符号数，正数的符号位用“0”表示，负数的符号位用“1”表示，数值部分用二进制形式表示。


反码表示法规定：正数的反码与原码相同，负数的反码为对该数的原码除符号位外各位取反。


补码表示法规定：正数的补码与原码相同，负数的补码为对该数的原码除符号位外各位取反，然后在最后一位加1。


基本运算符

算术运算符：+，-，*，/，%,++,–

        int a = 10;
        int b = 20;
 ]]></description><category></category></item></channel></rss>