import java.util.Scanner;
/**
* 创建一个学生类 描述学生信息的一个类
* @author Administrator
* 类的构成:一般情况类是有两部分构成
* 1.属性 直接在类中定义的 类似于之前定义的变量 在变量的基础上添加一个public访问修饰符
* 属性描述的是当前类的一个基本信息 属性不建议直接完成赋值 我们只需要声明出来
* 2.方法 封装了具体的一个功能实现
*/
public class StuDent {
//1.添加学生基本的属性信息(学生姓名 学生年龄 学生学号 学生性别....)
public String name;
public int age;
public int sid;
public char sex;
//2.添加学生具备的功能(方法)信息
//方法的构成要素:1.访问修饰符(public) 2.方法的返回值类型(void) 3.方法名 4.方法参数列表 5.方法体
//定义一个显示学生基本信息的方法
public void showinfo(){
System.out.println("学生的姓名是:"+name+",年龄是:"+age+",学号是:"+sid+",性别是:"+sex);
}
//定义一个学生具备学习能力的方法
public void study(){
System.out.println("学生具备学习的能力");
}
Example:
//定义一个方法 实现姓名查找的功能
//实现思路分析:
//1.通过for循环动态的保存5个学生姓名到字符串数组中
//2.通过控制台输入一个要查找的姓名 用字符串类型的变量接收
//3.遍历数组通过查询的姓名去数组中查找 如果查找的姓名存在 就输出找到了 否则输出没找到
public void findname(){
Scanner input = new Scanner(System.in);
String[] names = new String[5];
String answer = "y";
//1.通过for循环动态的保存5个学生姓名到字符串数组中
for(int i = 0;i<names.length;i++){
System.out.println("请录入第"+(i+1)+"个学生的姓名:");
names[i] = input.next();
}
do{
//2.通过控制台输入一个要查找的姓名 用字符串类型的变量接收
System.out.println("请输入要查找的姓名:");
String name = input.next();
//3.遍历数组通过查询的姓名去数组中查找 如果查找的姓名存在 就输出找到了 否则输出没找到
boolean falg = false;
for(int i = 0;i<names.length;i++){
if(names[i].equals(name)){
falg = true;
break;
}
}
if(falg){
System.out.println("找到了");
}else{
System.out.println("没找到");
}
System.out.println("是否继续查找y/n:");
answer = input.next();
}while(answer.equals("y"));
System.out.println("下次再查 这次不查了");
}
public class StuDenttext {
/**
* @param args
*/
public static void main(String[] args) {
//在当前类中(StudentTest)如何操作Sutdent类中的属性和方法?
//要操作一个类中的属性和方法 必须创建这个类的对象
//如何创建一个类的对象?
//创建一个类对象的语法: 类名 对象名 = new 类名();
//创建学生类对象 Student stu = new Student();
//如何通过对象去给类中的属性赋值和调用方法?
//给类中的属性完成赋值 需要通过对象名.属性的方式 调用属性完成赋值
//比如给Student类中的年龄赋值 stu.age = 21;
//调用类中的方法 是通过对象名.方法名()
//比如调用Student类中的显示基本信息的方法 stu.showinfo();
//1.创建学生类的对象
//解决创建对象报错的原因:完成导包操作
StuDent stu = new StuDent();
//2.通过对象名.属性的方式 完成给属性赋值
stu.name = "张三丰";
stu.age = 21;
stu.sid = 1001;
stu.sex = '男';
//3.通过对象名.方法名() 调用方法 执行方法
//如果没有通过对象名给类中的属性赋值 类中属性都有一个默认值
//int类型默认值是0 String类型的默认值是null char类型是口 double类型的是0.0
stu.showinfo();
stu.study();
stu.findname();
}
}