疯踏java知识点-进阶精讲篇1

简介: 疯踏java知识点-进阶精讲篇1

该资源是关于Java的师生管理系统,可以学习借鉴一下。

继续进行讲解,如果前面有不懂的,可以翻阅一下同专栏的其他文章,该专栏是针对Java的知识从0开始。


JavaBean

    一个Java中的类,其对象可用于程序中封装数据
    举例:学生类,手机类
    要求:1、成员变量使用private修饰
        2、提供每一个成员变量对应的setXxx()/getXxx()
        3、提供一个无参构造方法

案例

public class crj {
    public static void main(String[] args) {
        Student s = new Student();
        s.setName("林青霞");
        s.setAge(30);
        System.out.println(s.getName() + "," + s.getAge());
    }
}
public class Student {
    private String name;
    private int age;
    public Student() {
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public int getAge() {
        return age;
    }
}


再举一个 手机JavaBean

public class crj {
    public static void main(String[] args) {
        //无参构造方法+set方法
        Phone p1=new Phone();
        p1.setBrand("小米");
        p1.setPrice(2999);
        System.out.println(p1.getBrand()+","+p1.getPrice());
        //带参构造方法
        Phone p2 =new Phone("小米",2999);
        System.out.println(p2.getBrand()+","+p2.getPrice());
    }
}
public class Phone {
    private String brand;
    private int price;
    public Phone(){}
    public Phone(String brand, int price) {
        this.brand = brand;
        this.price = price;
    }
    public String getBrand() {
        return brand;
    }
    public void setBrand(String brand) {
        this.brand = brand;
    }
    public int getPrice() {
        return price;
    }
    public void setPrice(int price) {
        this.price = price;
    }
}



Scanner基本使用

 文本扫描程序,可以获取基本类型数据和字符串数据
 当我们需要从控制台或文件中读取输入时,Java中的Scanner类提供了一种
  方便的方式来实现。Scanner类位于java.util包中,它可以解析基本类型和
  字符串,并提供了多种方法来读取不同类型的输入。

案例

import java.util.Scanner;
public class crj {
    public static void main(String[] args) {
        //创建对象
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int i = sc.nextInt();
        System.out.println("你输入的整数是" + i);
    }
}
一旦获得Scanner对象,我们可以使用各种方法来读取输入。下面介绍几个常用
的方法:
next(): 读取并返回输入中的下一个字符串,遇到空格或换行符时停止读取。
nextInt(): 读取并返回输入中的下一个整数。
nextDouble(): 读取并返回输入中的下一个浮点数。
nextLine(): 读取一行输入,并返回该行的字符串,可以包含空格。

再举一个数据求和的案例

import java.util.Scanner;
public class crj {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入第一个数字:");
        int First=sc.nextInt();
        System.out.println("请输入第二个数字:");
        int Second=sc.nextInt();
        int sum =First+Second;
        System.out.println("求和结果是:"+sum);
    }
}


再举一个随机数的案例

import java.util.Random;
public class crj {
    public static void main(String[] args) {
        Random r=new Random();
        int number=r.nextInt(101)+1;//1-100
        System.out.println(number);
    }
}

综合案例:猜数字游戏

import java.util.Random;
import java.util.Scanner;
public class crj {
    public static void main(String[] args) {
        Random r= new Random();
        int number=r.nextInt(100)+1;
        System.out.println("系统已经产生一个1-100的随机整数");
        while (true) {
            Scanner sc =new Scanner(System.in);
            System.out.println("请输入你要猜的数字:");
            int guessNumber=sc.nextInt();
            if (guessNumber > number) {
                System.out.println("你猜的数据" + guessNumber + "大了");
            } else if (guessNumber < number) {
                System.out.println("你猜的数据" + guessNumber + "小了");
            } else {
                System.out.println("恭喜你猜中了");
                break;
            }
        }
    }
}
相关文章
|
1天前
|
安全 Java 程序员
阿里开发手册 嵩山版-编程规约 (四)OOP规约-Java程序员必看知识点!!!
《阿里开发手册 嵩山版》的OOP规约部分强调了面向对象编程的最佳实践,包括正确使用静态方法、覆写方法的注解、可变参数的使用、接口的稳定性、equals和compareTo方法的使用、BigDecimal的正确比较、包装类与基本数据类型选择、POJO类的属性和方法设计等,以提升代码的质量和维护性。
11 0
|
25天前
|
Java Perl
Java进阶之正则表达式
【7月更文挑战第17天】正则表达式(RegEx)是一种模式匹配工具,用于在字符串中执行搜索、替换等操作。它由普通字符和特殊元字符组成,后者定义匹配规则。
17 4
|
28天前
|
设计模式 Java
Java进阶之代理
Java进阶之代理
18 4
|
28天前
|
设计模式 Java
Java进阶之代理
Java进阶之代理
16 3
|
28天前
|
设计模式 Java
Java进阶之代理
【7月更文挑战第16天】Java动态代理通过`java.lang.reflect.Proxy`和`InvocationHandler`实现,无需编译期定义代理类。与静态代理相比,它更灵活,代码更简洁,适用于方法数量变化或未知接口代理。
17 2
|
29天前
|
Java 编译器 API
Java进阶之标准注解
【7月更文挑战第15天】Java标准注解包括标记注解(如@Deprecated)、@Override(检查方法重写)、@SuppressWarnings(抑制警告)。多值注解如@RequestMapping在Spring中用于HTTP请求映射。元注解如@Retention控制注解保留策略,@Target指定应用位置。Java8引入类型注解(@FunctionalInterface、@SafeVarargs)和重复注解(@Repeatable)。自定义注解可通过反射读取,如示例中的MyMarkerAnnotation等。
17 2
|
1月前
|
Java
Java进阶之内部类
【7月更文挑战第13天】Java内部类增进代码组织与封装,允许直接访问外部类成员,包括私有成员。主要有四种类型:成员、静态、局部和匿名内部类。匿名内部类常用于一次性实现接口或扩展类。内部类可隐藏实现细节,减少命名冲突,并在特定上下文中定义辅助类。示例展示了静态和非静态内部类如何在Shape类中封装Circle和Rectangle。使用内部类能提升代码可读性,但可能增加复杂性。
26 6
|
29天前
|
Java 编译器 API
Java进阶之标准注解
Java进阶之标准注解
19 1