卡码网Java基础课 | 1. A+B问题I
卡码网Java基础课|1. A+B问题I
类和面向对象
一个类具有一些“属性”和“方法”:
- “属性”表示类所具有的特征,我们可以描述为基本状态;
- “方法”表示类的行为和功能,我们可以描述为动态行为。
Person {
// 姓名、性别、年龄等属性
name;
gender;
age;
// 吃饭的方法
eat() {
}
// 行走的方法
walk() {
}
}
new关键字
创建Person实例需要使用new关键字。
- new Person()创建一个实例
- 将这个实例起名为xiaoming
- Person xiaoming表示这是一个Person的实例,xiaoming属于Person这种类型
Person xiaoming = new Person();
程序基本结构
创建一个Main.java,必须包括下面的基本结构:
public class Main {
public static void main(String[] args) {
}
}
- 使用class关键字定义一个public(公开)类,类的名称是Main
public class Main {
}
在Main.java文件中,必须存在一个与该文件同名的类,类要使用class这个关键字里定义,Main是类的名称,类的名称通常以大写字母开头, public表示这个类是公开的,这意味着你可以在任何其他类中访问。
- 类中还必须包括一个方法main,Java程序总是从main方法开始执行,表示这是Java程序的入口, 下面的代码是main方法的固定写法。
public static void main(String[] args) {
}
- public是一个访问修饰符, 除了可以修饰class外,也可以修饰方法,表示该方法是公开的,对于main来说,它必须是public的。
- 关键字static是另一个修饰符,它表示静态方法,后面我们会讲解方法的类型,目前,我们只需要知道,Java入口程序规定的方法必须是静态方法。
- void 表示该方法不返回任何值。
- main是方法的名称,作为程序的入口点,而且入口的名称方法名必须为main。
- String[] args:这是 main 方法的参数。
方法的组成
一个方法主要包含四个部分:返回类型,方法名,形参列表,方法体
ReturnType methodName(/* 参数列表 */) {
// 方法体
}
返回类型ReturnType
方法名之前放置一个关键字表示该方法的返回类型,这个关键字代表的含义是方法执行完毕会返回什么类型的值。
main 方法通常不返回结果,所以用void来修饰,因为它的主要目的是启动程序,而不是返回值。
函数名methodType
一个类可以有很多个方法,每个方法有不同的作用,为了区分这些方法,我们要给不同的方法起不同的方法名称,而且方法命名是有规范的。
形参列表
方法名之后的括号内填充的就是形参列表,它定义了方法在被调用时传递给方法的信息,参数可以有多个,不同参数之间用逗号分隔。
String[] args是 main 方法的参数,它表示的含义是一个字符串数组。
方法体
从左花括号{ }结束,这一部分就是方法体,方法体中可以有很多行代码,方法体中代码的执行产生不同的结果。
输入输出
在Java中,你可以使用标准输入(System.in)进行输入操作,使用标准输出(System.out)来进行输出操作,此外还需要使用到 Scanner 类(Java标准库中的一个类)。
- System.in 是一个标准的输入流,它允许你从控制台(键盘)获取用户输入的数据。
- Scanner 是 Java 中的一个类,它位于 java.util 包中,它提供了一种简便的方式来处理输入数据。
Scanner类的使用
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
sc.close(); // 关闭Scanner对象
}
}
变量
所以我们首先需要定义两个变量a,b代码这么写:
int a;
int b;
或者
int a, b;
在定义变量的时候,也可以给他一个初始值,如果不写初始化值的话,系统会帮助我们设置一个默认值0。
int a = 1;
现在可以使用一个变量来保存使用Scanner读取的数字了,Scanner使用nextInt()方法读取并返回下一个整数,我们使用该方法读取两个整数,并存放在变量a和变量b中。
int a = sc.nextInt();
int b = sc.nextInt();
完整代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println(a+b);
sc.close();
}
}
但这样只会运行一次,如果要持续运行得要一个循环。
while(sc.hasNextInt()) {
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println(a+b);
}
// 引入Scanner
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 创造一个Scanner对象
Scanner sc = new Scanner(System.in);
// 判断是否还有下一个数据
while(sc.hasNextInt()) {
// 读取两个整数并将它们存储在变量 a和 b中
int a = sc.nextInt();
int b = sc.nextInt();
// 输出a和b的值
System.out.println(a+b);
}
sc.close(); // 关闭Scanner对象
}
}
输入:Scanner类的使用
- next():读取下一个字符串。
- nextInt():读取下一个整数。
- nextDouble():读取下一个双精度浮点数。
- nextLine():读取下一行文本。
- hasNext():判断是否还有下一个输入项。如果有,返回 true;否则返回 false。
- hasNextInt():判断是否还有下一个整数输入项。
- hasNextDouble():检查是否还有下一个双精度浮点数输入项。
private和public
在程序基本结构中,我们介绍了用public来修饰类, 这里的public是一个访问修饰符,可以用来修饰类、属性或者方法,表示被修饰的成员对于其他所有类都是可见的。
除了public外,还有private修饰符和一些其他的修饰符,private表示被修饰的成员只能在包含它的类中被访问, 其他类无法访问类中的 private 成员。这通常用于隐藏类的内部细节。
public class A {
private int age;
}
public class B {
// 无法在 B 类中直接使用age
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!