12月29日 面向对象02(工具类&代码块)

静态的应用——工具类(构造方法私有化,仅提供功能)


制作说明书: 
1.写一个工具类
2.添加文档注释
3.用工具解析文档注释 javadoc工具
4.格式:javadoc -d 目录(.表示当前目录) -author -version 类.java


/**
说明……
@author 作者
@version 版本
*/


/**
说明……
@param 参数名称 参数解释
@param 参数名称 参数解释
@return 返回值说明
*/




对数组进行操作(需求:1.遍历数组 2.获取最大值 3.获取最小值 4.查找索引)
/**
*这是一个工具类,对数组进行操作
*@author Vincent
*@version 1.0
*/
public class ArrayTool
{
private ArrayTool(){}
/**
*对数组进行遍历,遍历格式为:【元素1,元素2,元素3,元素4……】
*@param arr 要遍历的数组
*/
public static void ArrayPrint(int[] arr)
{
System.out.print("[");
for(int x = 0 ; x < arr.length ;x++)
{
if(x == arr.length-1)
{
System.out.println(arr[x]+"]");
}
else
{
System.out.println(arr[x]+",");
}
}
}
/**
*输出数组中的最大值
*@param arr 输入要操作的数组
*@return 返回数组中的最大值
*/
public static int ArrayMax(int[] arr)
{
int max = arr[0];
for(int x = 0 ; x < arr.length ; x++)
{
if(max < arr[x])
{
max = max+arr[x];
arr[x] = max-arr[x];
max = max-arr[x];
}
}
return max;
}
/**
*输出数组中的最小值
*@param arr  输入要操作的数组
*@return 返回数组中的最小值
*/
public static int ArrayMin(int[] arr)
{
int min = arr[0];
for(int x = 0 ; x < arr.length ; x++)
{
if(min > arr[x])
{
min = min+arr[x];
arr[x] = min-arr[x];
min = min-arr[x];
}
}
return min;
}
/**
*获取指定元素的第一次出现时的索引,如果不存在,则输出-1
*@param arr 输入要操作的数组
*@param num 要查找的数字
*@return 返回数字的索引,如果数字不存在,则返回-1
*/
public static int ArrayFindIndex(int[] arr,int num)
{
for(int x = 0 ; x < arr.length ; x++)
{
if(num == arr[x])
{
return num;
}
}
return -1;
}
}




猜数字的小游戏:
(需求:系统随机生成一个从1-100的数据,用户进行猜,并输出"大了",“小了”,“you win”一


共有十次猜测机会)
/*(需求:系统随机生成一个从1-100的数据,用户进行猜,并输出"大了",“小了”,“you win”
一共有十次猜测机会)*/
import java.util.Scanner;
public class GuessNumber
{
public static void main(String[] args)
{
//初始化猜测次数
int count = 10;
int myNum = 0;
Scanner sc = new Scanner(System.in);
//生成一个随机数
int num = (int)(Math.random()*100)+1;
while(count > 0)
{
System.out.println("请输入一个数字,您还有"+count+"次机会");
myNum = sc.nextInt();
if(myNum > num)
{
System.out.println("大了。。。");
count--;
}
else if(myNum < num)
{
System.out.println("小了。。。");
count--;
}
else
{
count = 0;
}
}
if(count == 0)
{
if(myNum == num)
{
System.out.println("YOU WIN");
}
else
{
System.out.println("YOU LOSE");
}
}
}
}




代码块:在Java中,使用{}括起来的代码被称为代码块。
根据其位置和声明的不同,可以分为


局部代码块:局部位置,用于限定变量的生命周期。


构造代码块:在类中的成员位置,用{}括起来的代码,每次调用构造方法执行前,都会先执行构造代码


块。
对对象进行初始化


静态代码块:在类中的成员位置,用{}括起来的代码,只不过它用static修饰了
对类初始化。


//对代码块的使用:


class Code
{
static{
int a = 1000;
System.out.println("类已经被创建"+a);
}
{
int b = 100;
System.out.println("对象被创建"+b);
}
public Code()
{
System.out.println("构造函数已经执行");
}
public Code(int a)
{
System.out.println("构造函数"+a+"已经被执行");
}
}


public class Demo
{
public static void main(String[] args)
{
{
int a = 10;
System.out.println(a);
}
//System.out.println(a);
Code c = new Code();
Code c1 = new Code(1);
}
}




运行顺序: 静态代码块 > 构造代码块 > 构造函数



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章