<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[jssgab的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/jssgab</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; jssgab]]></copyright><item><title><![CDATA[Junit单元测试：1.是啥 2.有啥用 3.黑盒测试 白盒测试 4.@Test测试、@Assert断言 5.@Befort、@After]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/124150108</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/124150108</guid><author>jssgab</author><pubDate>Wed, 13 Apr 2022 15:54:11 +0800</pubDate><description><![CDATA[Junit单元测试
文章目录Junit单元测试1.是啥2.有啥用3.测试分类黑盒测试白盒测试步骤：判定结果：4.@Test测试、@Assert断言5.@Befort、@After
1.是啥

在计算机编程中，单元测试（英语：Unit Testing）又称为模块测试, 是针对程序模块（软件设计的最小单位）来进行正确性检验的测试工作。 程序单元是应用的最小可测试部件。简单来说，就是测试数据的稳定性是否达到程序的预期。

2.有啥用

当我们做完项目的一个小模块，我们先去测试一下这个小模块是否正确或达到预期，如果]]></description><category></category></item><item><title><![CDATA[N种内部类]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123759797</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123759797</guid><author>jssgab</author><pubDate>Sat, 26 Mar 2022 17:25:26 +0800</pubDate><description><![CDATA[N种内部类
内部类定义
内部类（nested classes），面向对象程序设计中，可以在一个类的内部定义另一个类。
嵌套类分为两种，即静态嵌套类和非静态嵌套类。静态嵌套类使用很少，最重要的是非静态嵌套类，也即是被称作为内部类(inner)。
内部类是JAVA语言的主要附加部分。内部类几乎可以处于一个类内部任何位置，可以与实例变量处于同一级，或处于方法之内，甚至是一个表达式的一部分。
为什么需要内部类？
⒈ 内部类对象可以访问创建它的对象的实现，包括私有数据；
⒉ 内部类不为同一包的其他类所见，具有很好的封]]></description><category></category></item><item><title><![CDATA[接口/重写接口所有方法/class(类)变成interface(接口)/作用]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123617793</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123617793</guid><author>jssgab</author><pubDate>Sun, 20 Mar 2022 18:03:48 +0800</pubDate><description><![CDATA[package com.oop.demo03;

public interface A  {  

}

class(类)变成interface(接口)
接口中的所有定义其实都是抽象的public
ackage com.oop.demo03;

public interface A  {
    void xxx(String name);
}

实现接口的类，必须重写接口所有方法

接口time
package com.oop.demo03;

public interface TimeService {]]></description><category></category></item><item><title><![CDATA[抽象类abstract /约束，不想去写，有人帮忙去写]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123617324</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123617324</guid><author>jssgab</author><pubDate>Sun, 20 Mar 2022 17:36:26 +0800</pubDate><description><![CDATA[抽象类abstract
ackage com.oop.demo03;

public  class Demo {

}

抽象类
ackage com.oop.demo03;

public abstract class Demo {

}

//约束，不想去写，有人帮忙去写
public abstract void xxx();

只有方法名字，没有方法的实现

A类
public class A extends Demo {
    @Override
    public void xxx() {
 ]]></description><category></category></item><item><title><![CDATA[static静态和非静态]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123617009</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123617009</guid><author>jssgab</author><pubDate>Sun, 20 Mar 2022 17:22:34 +0800</pubDate><description><![CDATA[package com.oop.demo03;

public class Student extends Person {
    //静态
    public static void go(){

    }
    //非静态
    public void run(){

    }

    public static void main(String[] args) {
        go();
	//	run();	报错
    }


}

所以说静态只能调用静态，不能调用非静态；
  ]]></description><category></category></item><item><title><![CDATA[instanceof和强制转换]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123615890</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123615890</guid><author>jssgab</author><pubDate>Sun, 20 Mar 2022 16:38:06 +0800</pubDate><description><![CDATA[Application类
//Object&gt;String
//Object&gt;Person&gt;Student
//Object&gt;Person&gt;Teacher
Object object = new Student();

System.out.println(object instanceof Student);//1
System.out.println(object instanceof Person);//1
System.out.println(object instanc]]></description><category></category></item><item><title><![CDATA[多态...]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123614921</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123614921</guid><author>jssgab</author><pubDate>Sun, 20 Mar 2022 16:00:25 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[继承extends super 方法的重写]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123614032</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123614032</guid><author>jssgab</author><pubDate>Sun, 20 Mar 2022 15:42:56 +0800</pubDate><description><![CDATA[继承
extends
学生类继承人类
public class Student extends Person {

子类继承父类就会拥有父类的全部方法
要让子类继承不能是private私有的，除非用get，set方法操作
不加public默认是可继承的
Object类
所有的类都默认直接在这里插入图片描述
或间接继承Object
super
Print

super

注意点

方法的重写



...]]></description><category></category></item><item><title><![CDATA[封装:属性私有 ；get 获得这个数据 ；set 给这个数据设置值]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123607793</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123607793</guid><author>jssgab</author><pubDate>Sun, 20 Mar 2022 14:54:38 +0800</pubDate><description><![CDATA[属性私有
private不能直接调用


]]></description><category></category></item><item><title><![CDATA[创建对象内存分析]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123602962</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123602962</guid><author>jssgab</author><pubDate>Sat, 19 Mar 2022 21:15:20 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[构造器详情]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123602294</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123602294</guid><author>jssgab</author><pubDate>Sat, 19 Mar 2022 20:46:11 +0800</pubDate><description><![CDATA[IDEA中打开class文件


点击左上角的File，在出现的列表中找到Project Structure并点击


在弹出窗口的右边栏找到**+ Add Content Root**并点击


找到所在项目out文件夹并点击，然后单击OK


单击在第2步时的弹出窗口的Apply



一个类即使什么都不写，也会存在一个方法
显示的定义构造器
	public Person(){
        
    }

这样就是一个方法，1.与类名相同	2.没有返回值  的无参构造
作用：例化初始化值
Run中的]]></description><category></category></item><item><title><![CDATA[冒泡排序.]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123593738</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123593738</guid><author>jssgab</author><pubDate>Sat, 19 Mar 2022 13:51:25 +0800</pubDate><description><![CDATA[冒泡排序
 public static void main(String[] args) {

        int[] a = {99, 324, 22, 435, 54};

        int[] sort = sort(a);//调用写的sort方法，然后返回已排序完的数组a

        System.out.println(Arrays.toString(a));
    }
    //自己写一个冒泡排序的方法
    
//把void→int[]返回值接收
    public s]]></description><category></category></item><item><title><![CDATA[Arrays类 打印数组元素 数组排序 填充]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123593199</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123593199</guid><author>jssgab</author><pubDate>Sat, 19 Mar 2022 13:20:50 +0800</pubDate><description><![CDATA[Arrays类
Arrays java.util
在main里输Arrays java.util，导入这个包

按ctrl点击Arrays进入源码
点Structure可以看到Arrays的所有方法


打印数组元素
Arrays.toString( ).
int[] a = {99, 324, 22, 435, 54};
        System.out.println(Arrays.toString(a));

输出：[99, 324, 22, 435, 54]

数组排序
Arrays.sort(]]></description><category></category></item><item><title><![CDATA[二维数组.]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123546769</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123546769</guid><author>jssgab</author><pubDate>Thu, 17 Mar 2022 11:52:06 +0800</pubDate><description><![CDATA[二维数组
int[][]array={ {1,2}, {2,3}, {3,4}, {4,5} };
System.out.println(array[0][0]);

输出：1
array[3] [1]==5
array[0]=={1，2}==12
System.out.println(array[0]);

输出：[I@776ec8df	//这是个对象，看不到正常
用上次学的打印数组方法来进行输出
printArray(array[0]);
}
public static void printArray(]]></description><category></category></item><item><title><![CDATA[三种初始化及内存分析]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123538553</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123538553</guid><author>jssgab</author><pubDate>Wed, 16 Mar 2022 22:33:53 +0800</pubDate><description><![CDATA[三种初始化及内存分析
java内存：

堆：存放new的对象和数组；可以被所有的线程共享，比uu会存放别的对象
栈：存放基本变量类型；引用对象的变量
方法区：可以被所有的线程共享；包含了所有的class和static变量

三种初始化：
静态初始化
int[] a = {1,2,3};
Man[] mans ={new Man(1,1),new Man(2,2)};

动态初始化
int[] a = new int[2];
a[0]=1;
a[1]=2;

数组的默认初始化
​		数组是引用数组，它的元素相]]></description><category></category></item><item><title><![CDATA[数组：For-Each循环；数组作方法入参；数组作返回值]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123537704</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123537704</guid><author>jssgab</author><pubDate>Wed, 16 Mar 2022 21:56:53 +0800</pubDate><description><![CDATA[数组
相同类型数据的有序结合

先声明变量

dateType[] arrayRefVar;


使用new创建数组

dateType[] arrayRefVar = new dateType[arraySize] ;

int[] xxx;
xxx new int[10];


获取数组长度

array.length
for (int i = 0; i &lt; nums.length; i++) {
           }


...]]></description><category></category></item><item><title><![CDATA[递归及其作用]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123515088</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123515088</guid><author>jssgab</author><pubDate>Tue, 15 Mar 2022 23:09:48 +0800</pubDate><description><![CDATA[递归
用简单程序解决复杂问题，把大问题层层转化为与原问题相似的规模较小的问题来求解；
只需少量程序就可描述解体过程所需的多次重复计算
递归结构包括两个部分
递归头：什么时候不调用自身方法。如果没有头将陷入死循环。
递归体：什么时候需要调用自身方法
以下是5的阶乘演示
package com.wu.Demo;

public class Demo {
    public static void main(String[] args) {
        System.out.println(f(5));
 ]]></description><category></category></item><item><title><![CDATA[命令行传递参数]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123494357</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123494357</guid><author>jssgab</author><pubDate>Tue, 15 Mar 2022 09:39:25 +0800</pubDate><description><![CDATA[命令行传递参数
for (int i = 0; i &lt; args.length; i++) {
            System.out.println("args[" + i + "]:"+args[i]);
    }

开头加入cmd进入命令行

在命令行用[cd…/]退到src位置
输入：java com.wu.Demo.Demo06
再输入：【↑】直接输上一行：java com.wu.Demo.Demo06 //再输入字符 Good Moring Sir
打印：
D:\code\java]]></description><category></category></item><item><title><![CDATA[方法的重载]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123487751</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123487751</guid><author>jssgab</author><pubDate>Mon, 14 Mar 2022 20:36:25 +0800</pubDate><description><![CDATA[方法的重载

还是这个比大小的代码
package com.wu.Demo;

public class Demo05 {
    public static void main(String[] args) {

        int max = max(10,20);
        System.out.println(max);
    }
    //比大小1	int型
    public static int max(int num1,int num2) {

        int res]]></description><category></category></item><item><title><![CDATA[方法调用；比大小；怎么写方法]]></title><link>https://blog.youkuaiyun.com/jssgab/article/details/123486959</link><guid>https://blog.youkuaiyun.com/jssgab/article/details/123486959</guid><author>jssgab</author><pubDate>Mon, 14 Mar 2022 20:03:00 +0800</pubDate><description><![CDATA[方法
//这是main方法
public static void main(String[] args) {
    
    add//这里不能直接用
    }
		//这是加法
        public int add(int a,int b){
            return a+b;
    }

public static void main(String[] args) {
    
  int sum=add(1,2);;//这样可以
    System.out.println(]]></description><category></category></item></channel></rss>