用java写一个面向对象的例子
时间: 2023-04-08 15:04:07 浏览: 82
好的,我可以回答这个问题。以下是一个简单的Java面向对象的例子:
public class Animal {
private String name;
private int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public void speak() {
System.out.println("Hello, my name is " + name + " and I am " + age + " years old.");
}
}
public class Main {
public static void main(String[] args) {
Animal cat = new Animal("Fluffy", 3);
cat.speak();
Animal dog = new Animal("Buddy", 5);
dog.speak();
}
}
这个例子中,我们定义了一个Animal类,它有两个属性:name和age。我们还定义了一个构造函数,用于初始化这些属性。最后,我们定义了一个speak()方法,用于输出Animal的名字和年龄。在Main类中,我们创建了两个Animal对象,并调用它们的speak()方法。
相关问题
JAVA,面向对象设计一个投票程序
下面是一个简单的JAVA面向对象的投票程序设计:
1. 首先,我们需要一个投票选项的类:
```java
public class Option {
private String name;
private int votes;
public Option(String name) {
this.name = name;
this.votes = 0;
}
public String getName() {
return name;
}
public int getVotes() {
return votes;
}
public void vote() {
votes++;
}
}
```
这个类包含一个选项名称和一个投票计数器,还有一个投票方法用于增加投票计数器。
2. 接下来,我们需要一个投票活动的类:
```java
import java.util.ArrayList;
public class Voting {
private String title;
private ArrayList<Option> options;
public Voting(String title) {
this.title = title;
this.options = new ArrayList<Option>();
}
public String getTitle() {
return title;
}
public ArrayList<Option> getOptions() {
return options;
}
public void addOption(String name) {
options.add(new Option(name));
}
public void vote(int index) {
options.get(index).vote();
}
}
```
这个类包含一个投票活动的标题和一个选项列表。我们可以添加选项并对选项进行投票。
3. 最后,我们可以创建一个投票程序:
```java
import java.util.Scanner;
public class VotingProgram {
public static void main(String[] args) {
Voting voting = new Voting("What is your favorite color?");
voting.addOption("Red");
voting.addOption("Green");
voting.addOption("Blue");
Scanner scanner = new Scanner(System.in);
System.out.println(voting.getTitle());
for (int i = 0; i < voting.getOptions().size(); i++) {
System.out.println((i + 1) + ". " + voting.getOptions().get(i).getName());
}
while (true) {
System.out.print("Enter your vote (1-" + voting.getOptions().size() + ", 0 to exit): ");
int vote = scanner.nextInt();
if (vote == 0) {
break;
}
if (vote < 1 || vote > voting.getOptions().size()) {
System.out.println("Invalid vote!");
} else {
voting.vote(vote - 1);
}
}
System.out.println("Results:");
for (Option option : voting.getOptions()) {
System.out.println(option.getName() + " - " + option.getVotes());
}
}
}
```
这个程序创建一个新的投票活动并添加三个选项。然后,它使用一个循环让用户输入他们的投票,直到他们输入0为止。最后,它显示投票结果。
这个程序只是一个简单的例子,可以根据需要进行修改和扩展。
利用面向对象用Java做一个用户登录系统代码
以下是一个简单的用户登录系统的Java代码,使用面向对象编程:
User.java
```java
public class User {
private String username;
private String password;
public User(String username, String password) {
this.username = username;
this.password = password;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
}
```
LoginSystem.java
```java
import java.util.Scanner;
public class LoginSystem {
private static final User[] USERS = {
new User("user1", "password1"),
new User("user2", "password2"),
new User("user3", "password3")
};
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter username: ");
String username = scanner.nextLine();
System.out.print("Enter password: ");
String password = scanner.nextLine();
boolean isLoggedIn = false;
for (User user : USERS) {
if (user.getUsername().equals(username) && user.getPassword().equals(password)) {
isLoggedIn = true;
break;
}
}
if (isLoggedIn) {
System.out.println("Login successful!");
} else {
System.out.println("Invalid username or password. Please try again.");
}
}
}
```
在这个例子中,我们创建了一个User类来表示用户,它有一个构造函数用于初始化用户名和密码。LoginSystem类中有一个常量数组USERS,用于存储已注册的用户。在main方法中,我们使用Scanner类从控制台读取用户名和密码,并遍历数组USERS来检查用户是否存在。如果存在,我们输出“登录成功!”,否则输出“用户名或密码无效,请重试。”