java 电池类类代码举例_java基础---类的无参方法

1.如何定义类的方法

步骤一:定义方法名以及返回值类型

步骤二:编写方法体

2.方法的返回值

两种情况

如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该返回值的类型

如果方法没有返回值,返回值类型为void

举例:

public class AutoLion {

//定义变量

public String color;

//跑  没有返回值void

public void run(){

System.out.println("lion running...");

}

//有返回值

//return 终止程序 跳出方法

public String bark(){

String voice="狮子吼";

return voice;

}

}

public class AutoLionTest {

public static void main(String[] args) {

AutoLion al=new AutoLion();

//没有返回值

al.run();

// 带返回值的方法如何处理?

// 带返回值的方法:必须接收返回值

String voice=al.bark();

System.out.println(voice);   会处理结果

}

}

3.方法调用

举例

public class AutoLion {

//定义变量属性file的值可以做返回

public String color;

//返回狮子的颜色

public String getColor(){

return color;

}

}

public class AutoLionTest {

public static void main(String[] args) {

AutoLion al=new AutoLion();

//返回颜色测试

al.color="red";

String color=al.getColor();

System.out.println(color);

}

}

方法的嵌套(调用)

public class AutoLion {

//定义变量

public String color;

//返回狮子的颜色

public String getColor(){

return color;

}

//返回狮子的属性

//在一个方法中调用另外一个方法

public String info(){

return "这是一只"+getColor()+"颜色的狮子";

}

}

public class AutoLionTest {

public static void main(String[] args) {

AutoLion al=new AutoLion();

al.color="red";

String color=al.info();

System.out.println(color);

}

}

5.方法调用小结

1.Student类的方法a( )调用Student类的方法b( ),直接调用

public void a( ) {

b( ); //调用b( )

}

2.Student类的方法a( )调用Teacher类的方法b( ),先创建类对象,然后使用“.”调用

public void a( ) {

Teacher t = new Teacher( );

t.b( ); //调用Teacher类的b()

}

举例:学生方法调用老师方法

20180901110759011922.png

20180901110759463093.png

20180901110759758015.png

6.常见错误

方法的返回值类型为void,方法中不能有return返回值!

方法不能返回多个值!

多个方法不能相互嵌套定义!

不能在方法外部直接写程序逻辑代码!

练习:编写电池类

编写电池类(Cell):具有品牌属性brand,可以续电getPrower()

编写测试类(TestCell)

public class Cell {

public String brand;

public void getPrower(){

System.out.println("充电中...");

}

}

public class CellTest {

public static void main(String[] args) {

Cell nanfu=new Cell();

nanfu.brand="南孚";

String brand=nanfu.brand;

System.out.println(brand);

nanfu.getPrower();

}

}

练习:计算平均分和总成绩

public class ScoreCalc {

public double java;

public double python;

public double go;

//计算总成绩

public double getSum(){

double sum=java+python+go;

return sum;

}

//计算平均成绩

public double avg(){

double avg=getSum()/3;

return avg;

}

}

import java.util.Scanner;

public class ScoreCalcTest {

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

ScoreCalc sc=new ScoreCalc();

System.out.println("请输入JAVA成绩");

sc.java=input.nextDouble();

System.out.println("请输入python成绩");

sc.python=input.nextDouble();

System.out.println("请输入go成绩");

sc.go=input.nextDouble();

//计算总分

double sum=sc.getSum();

double avg=sc.avg();

System.out.println("总分是"+sum+"平均分"+avg);

}

}

7.成员变量和局部变量

变量声明的位置决定变量作用域

变量作用域确定可在程序中按变量名访问该变量的区域

8.成员变量和局部变量的区别

作用域不同

1-局部变量的作用域仅限于定义它的方法

2-成员变量的作用域在整个类内部都是可见的

初始值不同

1-Java会给成员变量一个初始值

2-Java不会给局部变量赋予初始值

9.成员变量和局部变量常见错误

局部变量avg的作用域仅限于calcAvg()方法

public class Test {

int score1 = 88;

int score2 = 98;

public void calcAvg() {

int avg = (score1 + score2)/2;

}

public void showAvg(){

System.out.println("平均分是:" + avg);

}

}

练习:

编写手机类(Phone)

可以下载音乐,可以播放这些音乐,可以进行充电

重用电池类方法(Cell)

编写测试类(TestPhone)

public class Phone {

//下载音乐

public String download(){

String music="喵喵喵";

return music;

}

//播放音乐

public void play(){

String music=download();

System.out.println("播放"+music);

}

//充电

public void charge(){

Cell cell=new Cell();

cell.getPrower();

}

}

public class PhoneTest {

public static void main(String[] args) {

Phone a=new Phone();

a.download();

a.play();

a.charge();

}

}

心得:本类方法与不同类方法的嵌套

练习:实现菜单的级联效果

import java.util.Scanner;

public class Menu {

//登陆菜单

public void showLoginMenu(){

Scanner input=new Scanner(System.in);

boolean isTrue=true;

while(isTrue){

System.out.println("欢迎使用我行我素购物管理系统");

System.out.println("1.登陆系统");

System.out.println("2.退出");

System.out.println("请选择....");

int choice=input.nextInt() ;

if(choice==1){

showMainMenu();

break;

}else if(choice==2){

break;

}else{

System.out.println("对不起,输入有误,请重新输入");

}

}

}

//显示主菜单

public void showMainMenu(){

Scanner input=new Scanner(System.in);

boolean isTrue=true;

while (isTrue) {

System.out.println("我行我素购物管理系统主菜单");

System.out.println("--------------------------");

System.out.println("登陆系统");

System.out.println("1.客户信息管理2.真情回馈");

System.out.println("请选择....");

int choice=input.nextInt();

if (choice==1) {

break;

}else if(choice==2){

showSendGMenu();

break;

}else if(choice==0){

showLoginMenu();

}else{

System.out.println("对不起,输入有误,请重新输入");

}

}

}

//显示客户信息

public void showSendGMenu(){

Scanner input=new Scanner(System.in);

System.out.println("我行我素购物管理系统>>真情回馈");

System.out.println("------------------------------");

System.out.println("1-幸运大放送");

System.out.println("2-幸运抽奖");

System.out.println("3-生日问候");

Boolean isTrue=true;

while(isTrue){

int choice=input.nextInt();

switch (choice) {

case 1:

System.out.println("执行幸运大放送");

break;

case 2:

System.out.println("执行幸运抽奖");

break;

case 3:

System.out.println("执行生日问候");

break;

default:

System.out.println("对不起,请重新输入");

break;

}

}

}

}

测试类

public class MenuTest {

public static void main(String[] args) {

Menu m=new Menu();

m.showLoginMenu();

}

}

练习:实现系统入口程序

需求说明

编写类StartSMS,

实现输入用户名和密码,

符合条件的进入系统

package demo;

// 人员类

public class Manager {

public String username="afu";

public String password="123";

public void show() {

System.out.println("名字:"+username+"密码:"+password);

}

}

package demo;

import java.util.Scanner;

public class Menu {

//显示登陆菜单

public void showLoginMenu() {

Scanner input=new Scanner(System.in);

boolean isTrue=true;

while(isTrue) {

System.out.println("欢迎登陆我行我素购物系统");

System.out.println("1-登陆");

System.out.println("2-退出");

System.out.println("请选择");

int choice=input.nextInt();

if(choice==1) {

//

break;

}else if(choice==2) {

break;

}else {

System.out.println("对不起,输入有误,请重新输入");

}

}

}

//显示主菜单

public void showMainMenu() {

Scanner input=new Scanner(System.in);

boolean isTrue=true;

while (isTrue) {

System.out.println("我行我素购物管理系统");

System.out.println("---------------------------------------------------");

System.out.println("1-客户信息管理");

System.out.println("2-真情回馈");

int choice=input.nextInt();

if(choice==1) {

break;

}else if(choice==2) {

showCustomerMenu();

break;

}else {

}

}

}

//显示客户信息

public void showCustomerMenu() {

Scanner input=new Scanner(System.in);

boolean isTrue=true;

while (isTrue) {

System.out.println("我行我素购物管理系统>>真情回馈");

System.out.println("---------------------------------------------------");

System.out.println("1-幸运大放送");

System.out.println("2-幸运抽奖");

System.out.println("3-生日问候");

int choice=input.nextInt();

switch (choice) {

case 1:

System.out.println("幸运大放送");

isTrue=false;

break;

case 2:

System.out.println("幸运抽奖");

isTrue=false;

break;

case 3:

System.out.println("生日问候");

isTrue=false;

break;

default:

System.out.println("对不起,请重新输入");

break;

}

}

}

}

package demo;

import java.util.Scanner;

public class StartSMS {

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

boolean isTrue=true;

while (isTrue) {

Manager manager=new Manager();

Menu   menu=new Menu();

menu.showLoginMenu();

System.out.println("请输入用户名");

String username=input.next();

System.out.println("请输入密码");

String pwd=input.next();

if(username.equals(manager.username)&&pwd.equals(manager.password)) {

System.out.println("登陆成功");

System.out.println("欢迎"+manager.username+"login");

/* menu.showMainMenu();*/

break;

}else {

System.out.println("对不起,您没有权限");

}

}

}

}

import javax.microedition.lcdui.Command; import javax.microedition.lcdui.CommandListener; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Form; import javax.microedition.lcdui.Image; import javax.microedition.lcdui.ImageItem; import javax.microedition.lcdui.Item; import javax.microedition.lcdui.TextField; public class PhoneAdd extends Form { private UIController controller; private Command BACK_COMMAND; private Command SAVE_COMMAND; private TextField nameField; private TextField phoneField; private TextField QQField; private TextField sexField; private TextField ageField; // private ImageItem iconQQ; // private Image icon; public PhoneAdd(String title, UIController control) { super(title); controller = control; this.setCommandListener(new PhoneAddListener()); BACK_COMMAND = new Command("返回", Command.BACK, 1); SAVE_COMMAND = new Command("确认", Command.OK, 2); this.addCommand(BACK_COMMAND); this.addCommand(SAVE_COMMAND); /* try{ icon=Image.createImage("/icon/7.png"); }catch(java.io.IOException e){ icon=null; System.out.println("图片导入异常"); } */ nameField = new TextField("名字", "", 16, TextField.ANY); phoneField = new TextField("话", "", 16, TextField.PHONENUMBER); QQField = new TextField("QQ", "", 11, TextField.NUMERIC); sexField = new TextField("性别", "", 2, TextField.ANY); ageField = new TextField("年龄","",3,TextField.NUMERIC); // iconQQ=new ImageItem("",icon,Item.LAYOUT_LEFT,"图片无法显示"); this.append(nameField); this.append(phoneField); this.append(sexField); // this.append(iconQQ); this.append(QQField); this.append(ageField); } public void clear() { nameField.setString(""); phoneField.setString(""); sexField.setString(""); QQField.setString(""); ageField.setString(""); } private class PhoneAddListener implements CommandListener { public void commandAction(Command command, Displayable disp) { if (command == BACK_COMMAND) { controller.handleEvent(UIController.EventID.EVENT_VIEW_BACK, null); } else if (command == SAVE_COMMAND) { String name = nameField.getString(); String phone = phoneField.getString(); String QQ = QQField.getString(); String sex = sexField.getString(); String age= ageField.getString(); if ((name == null || name.equals("")) || (phone == null || phone.equals(""))) { return; } Object[] args = { name, phone, QQ, sex ,age}; controller.handleEvent(UIController.EventID.EVENT_NEW_SAVE, args); } } } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值