01java中的文档注释和制作

* A: 在eclipse使用时,可以配合文档注释,导出对类的说明文档,从而供其         他人阅读学习与使用。
通过使用文档注释,将类或者方法进行注释用@简单标注基本信息。如@author 作者、@version代码版本、@param方法参数、@return方法返回值等。 

02eclipse生成jar包

03JAVA_HOME配置

04导入jar包

* A:   导入jar包:即把指定的jar包,加入到指项目中,提供给项目使用。
导入jar包的过程是将jar包加入到项目的.classpath文件中去,让项目识别,便可以使用jar包中所有的.class文件类。
以下是加入步骤:
1:项目根文件夹下创建lib文件夹,用于同一管理所有的jar文件
2:把jar文件复制到lib文件夹中
3:右键点击jar文件,点击Build Path,选择Add to Build Path,此时查看项目根文件夹下的.classpath文件,发现新加入的jar包路径被配置到了该文件中。说明可以使用jar包中所有类了。

注意:
Jar包加入后,必须Add to Build Path才能使用
Jar包加入后,加入的类也必须导包,如果加入的类其包名与现有类包名相同,则视作在同一个包下。(不常见)

05不同修饰符使用细节

A: 常用来修饰类、方法、变量的修饰符如下:
 public 权限修饰符,公共访问, 类,方法,成员变量
 protected 权限修饰符,受保护访问, 方法,成员变量
 默认什么也不写 也是一种权限修饰符,默认访问, 类,方法,成员变量
 private 权限修饰符,私有访问, 方法,成员变量
 static 静态修饰符 方法,成员变量
 final 最终修饰符 类,方法,成员变量,局部变量
 abstract 抽象修饰符 类 ,方法
B: 不能同时使用的修饰符
同时,abstract与private不能同时使用;
同时,abstract与static不能同时使用;
同时,abstract与final不能同时使用。
C: 修饰类能够使用的修饰符: 修饰类只能使用public、默认的、final、abstract关键字 使用最多的是 public关键字
a:代码案例
public class Demo {} //最常用的方式
class Demo2{}
public final class Demo3{}
public abstract class Demo4{}
D:修饰成员变量能够使用的修饰符:
public : 公共的
protected : 受保护的
: 默认的
private :私有的
final : 最终的
static : 静态的
使用最多的是 private

a: 代码案例
public int count = 100;
protected int count2 = 100;
int count3 = 100;
private int count4 = 100; //最常用的方式
public final int count5 = 100;
public static int count6 = 100;
E:修饰构造方法能够使用的修饰符: public : 公共的 protected : 受保护的 : 默认的 private :私有的 使用最多的是 public
a:代码案例
public Demo(){} //最常用的方式
protected Demo(){}
Demo(){}
private Demo(){}

修饰成员方法能够使用的修饰符:
public : 公共的
protected : 受保护的
: 默认的
private :私有的
final : 最终的
static : 静态的
abstract : 抽象的
使用最多的是 public
public void method1(){}//最常用的方式
protected void method2(){}
void method3(){}
private void method4(){}
public final void method5(){}
public static void method6(){}//最常用的方式
public abstract void method7();//最常用的方式

06局部变量和成员变量解析

* A:程序编译
数学工具类
public class MathTool {
//求两个数的和的二倍
public double sum2times(int number,int number2) {
return (number+number2)*2;
}
//求两个数的积
public double area(int number,int number2) {
return number*number2;
}
}
长方形类
public class CFX { //因为长与宽,在现实事物中属于事物的一部分,所以定义成员变量    private int chang;    private int kuan; public CFX(int chang, int kuan) {
this.chang = chang;
this.kuan = kuan;
}
//求长与宽的周长
public double zhouChang() {
return (chang+kuan)*2;
}
//求长与宽的面积
public double mianJi() {
return chang*kuan;
}
public int getChang() {
return chang;
}
public void setChang(int chang) {
this.chang = chang;
}
public int getKuan() {
return kuan;
}
public void setKuan(int kuan) {
this.kuan = kuan;
}
}

07类作为方法的参数

* A:类作为方法参数
在编写程序中,会经常碰到调用的方法要接收的是一个类类型的情况,那么这时,要向方法中传入该类的对象。
如下代码演示:
class Person{
public void show(){
System.out.println("show方法执行了");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//创建Person对象
Person p = new Person();
//调用method方法
method(p);
} //定义一个方法method,用来接收一个Person对象,在方法中调用Person对象的show方法
public static void method(Person p){
p.show();
}

08抽象类作为方法参数与返回值

* A:   抽象类作为方法参数
今后开发中,抽象类作为方法参数的情况也很多见。当遇到方法参数为抽象类类型时,要传入一个实现抽象类所有抽象方法的子类对象。如下代码演示:
//抽象类
abstract class Person{
public abstract void show();
}
class Student extends Person{
@Override
public void show() {
System.out.println("重写了show方法");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//通过多态的方式,创建一个Person类型的变量,而这个对象实际是Student
Person p = new Student();
//调用method方法
method(p);
} //定义一个方法method,用来接收一个Person类型对象,在方法中调用Person对象的show方法
public static void method(Person p){//抽象类作为参数
//通过p变量调用show方法,这时实际调用的是Student对象中的show方法
p.show();
}
} * B:抽象类作为方法返回值
抽象类作为方法返回值的情况,也是有的,这时需要返回一个实现抽象类所有抽象方法的子类对象。如下代码演示:
//抽象类
abstract class Person{
public abstract void show();
}
class Student extends Person{
@Override
public void show() {
System.out.println("重写了show方法");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//调用method方法,获取返回的Person对象
Person p = method();
//通过p变量调用show方法,这时实际调用的是Student对象中的show方法
p.show();
} //定义一个方法method,用来获取一个Person对象,在方法中完成Person对象的创建
public static Person method(){
Person p = new Student();
return p;
}
}

09接口作为方法参数与返回值

* A:   接口作为方法参数
接口作为方法参数的情况是很常见的,经常会碰到。当遇到方法参数为接口类型时,那么该方法要传入一个接口实现类对象。如下代码演示。
//接口
interface Smoke{
public abstract void smoking();
}
class Student implements Smoke{
@Override
public void smoking() {
System.out.println("课下吸口烟,赛过活神仙");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//通过多态的方式,创建一个Smoke类型的变量,而这个对象实际是Student
Smoke s = new Student();
//调用method方法
method(s);
} //定义一个方法method,用来接收一个Smoke类型对象,在方法中调用Smoke对象的show方法
public static void method(Smoke sm){//接口作为参数
//通过sm变量调用smoking方法,这时实际调用的是Student对象中的smoking方法
sm.smoking();
}
}
* B: 接口作为方法返回值
接口作为方法返回值的情况,在后面的学习中会碰到。当遇到方法返回值是接口类型时,那么该方法需要返回一个接口实现类对象。如下代码演示。

//接口
interface Smoke{
public abstract void smoking();
}
class Student implements Smoke{
@Override
public void smoking() {
System.out.println("课下吸口烟,赛过活神仙");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//调用method方法,获取返回的会吸烟的对象
Smoke s = method();
//通过s变量调用smoking方法,这时实际调用的是Student对象中的smoking方法
s.smoking();
} //定义一个方法method,用来获取一个具备吸烟功能的对象,并在方法中完成吸烟者的创建
public static Smoke method(){
Smoke sm = new Student();
return sm;
}
}

10星级酒店案例

A: 根据“某五星级酒店,资金雄厚……都有自己的工作要做。”分析出,该题目中包含酒店,可以把它封装成类,多名员工。    
class 员工 {
属性:姓名
属性:工号
方法:工作
}
class 厨师 extends 员工{}
class 服务员 extends 员工{}
class 经理 extends 员工 {
属性:奖金
}

员工的类型有经理、厨师、服务员,它们有共同的属性(姓名、工号、),经理额外属性(奖金)。
根据“向酒店中,增加多名员工(其中包含1名经理,1名厨师、2名服务员)”。分析出,要创建一个酒店对象,并添加4名员工到酒店对象的员工集合中。
  酒店员工集合添加新员工: 经理对象
  酒店员工集合添加新员工: 厨师对象
  酒店员工集合添加新员工: 服务员对象
  酒店员工集合添加新员工: 服务员对象
根据“获取酒店幸运员工”。分析出,从酒店员工集合随机得到一名员工对象。
  1. 从酒店员工集合长度范围内,随机产生一个随机数
  2. 使用该随机数作为集合的索引,返回该索引处对应的员工对象
根据“酒店开设VIP服务,酒店的厨师与服务员可以提供VIP服务。(厨师做菜加量、服务员给顾客倒酒)”。分析出,这是要增加一个VIP的接口,接口中提供个VIP服务的方法。让厨师与服务员实现该接口。

 interface VIP服务{
   抽象方法:服务
  }
  class 厨师 extends 员工 implements VIP服务{ 重写服务方法 }
  class 服务员 extends 员工 implements VIP服务{ 重写服务方法 }

B:

  VIP服务
  public interface VIP {
  public abstract void server();
  //服务
  }

员工

/*员工:姓名 String 工号 String*/
public abstract class YuanGong { 
  // 成员变量
  private String xingMing;
  private String gongHao;
  // 构造方法
public YuanGong() {
  super();
}
public YuanGong(String xingMing, String gongHao) {
  super();
  this.xingMing = xingMing;
  this.gongHao = gongHao;
}
// 抽象方法
public abstract void work();
  // getters与setters
public String getXingMing() {
  return xingMing;
 }
public void setXingMing(String xingMing) {
  this.xingMing = xingMing;
}
public String getGongHao() {
  return gongHao;
}
public void setGongHao(String gongHao) {
  this.gongHao = gongHao;
}
}

服务员

/*定义员工的子类 服务员类*/

public class FuWuYuan extends YuanGong implements VIP {
  public FuWuYuan() {
  super();
}
public FuWuYuan(String xingMing, String gongHao) {
  super(xingMing, gongHao);
}
@Overridepublic void work() {
  System.out.println("亲,全身心为您服务,记得给好评哦");
}
@Overridepublic void server() {
System.out.println("给顾客倒酒");
}}

经理

/*
经理在员工的基础上,添加了奖金成员
*/ public class JingLi extends YuanGong {
  private double jiangJin;
  public JingLi() {
  super();
} public JingLi(String xingMing, String gongHao, double jiangJin) {
  super(xingMing, gongHao);
  this.jiangJin = jiangJin;
} public double getJiangJin() {
  return jiangJin;
} public void setJiangJin(double jiangJin) {
  this.jiangJin = jiangJin;
} @Overridepublic void work() { System.out.println("哪个员工让顾客不满意,我扣谁钱");
};
}

厨师

/*
定义员工的子类 厨师类
*/
public class ChuShi extends YuanGong implements VIP{
  public ChuShi() {
  super();
}
public ChuShi(String xingMing, String gongHao) {
  super(xingMing, gongHao);
}
@Overridepublic void work() {
  System.out.println("我做饭,放心吃吧,包您满意");
}
@Overridepublic void server() {
  System.out.println("做菜加量加料");
}
}

14_java之变量|参数|返回值|修饰符的更多相关文章

  1. 14_Java面向对象_第14天(Eclipse高级、类与接口作为参数返回值)_讲义

    今日内容介绍 1.Eclipse常用快捷键操作 2.Eclipse文档注释导出帮助文档 3.Eclipse项目的jar包导出与使用jar包 4.不同修饰符混合使用细节 5.辨析何时定义变量为成员变量 ...

  2. Python第七天 函数 函数参数 函数里的变量 函数返回值 多类型传值 函数递归调用 匿名函数 内置函数

    Python第七天   函数  函数参数   函数里的变量   函数返回值  多类型传值     函数递归调用   匿名函数   内置函数 目录 Pycharm使用技巧(转载) Python第一天   ...

  3. Java面向对象(Eclipse高级、类与接口作为参数返回值)

      面向对象 今日内容介绍 u Eclipse常用快捷键操作 u Eclipse文档注释导出帮助文档 u Eclipse项目的jar包导出与使用jar包 u 不同修饰符混合使用细节 u 辨析何时定义变 ...

  4. [转]Java反射之如何判断类或变量、方法的修饰符(Modifier解析)

    Java针对类.成员变量.方法,有很多修饰符,例如public.private.static.final.synchronized.abstract等,这些修饰符用来控制访问权限或其他特性. 本文就用 ...

  5. execute sp_executesql 用变量获取返回值

    execute sp_executesql 用变量获取返回值 1,EXEC的使用 2,sp_executesql的使用 MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_exe ...

  6. Vue 框架-03-键盘事件、健值修饰符、双向数据绑定

    Vue 框架-03-键盘时间及健值修饰符 一.键盘事件,当按键盘时,在控制台输出提示 html 源码: <!DOCTYPE html> <html> <head> ...

  7. SubSonic3.0使用存储过程查询时,不能使用output参数返回值的问题修改

    有个群友问SubSonic3.0执行存储过程时能不能使用output参数返回值,说测试过后获取不到返回值,早上有些时间所以就尝试修改了一下 首先在数据库中创建一个存储过程 CREATE PROCEDU ...

  8. JAVA中类以及成员变量和成员方法的修饰符的总结

    一  类的修饰符 java中的文件结构由大到小为:一个工程,一个工程下可以有许多包,每个包中可以有许多类. 类的修饰符分为         访问权限修饰符          和             ...

  9. 环境变量、block、修饰符:block对环境变量的引用和修改需要通过修饰符来限定

    环境变量.block.修饰符:block对环境变量的引用和修改需要通过修饰符来限定. http://www.cnblogs.com/fengmin/p/5816580.html - (NSUInteg ...

随机推荐

  1. 安卓开发 报错 错误:This version of android studio is incompatible with the gradle version used. 的解决

    本文的解决方法主要参考以下文章: https://blog.csdn.net/sinat_15417921/article/details/51907728 Android 开发总是会遇到各种不知道怎 ...

  2. (转)如何转载CSDN的文章

    前言   对于喜欢逛CSDN的人来说,看别人的博客确实能够对自己有不小的提高,有时候看到特别好的博客想转载下载,但是不能一个字一个字的敲了,这时候我们就想快速转载别人的博客,把别人的博客移到自己的空间 ...

  3. Windows中cmd操作mysql

    打开CMD 将工作目录切换到MySQL的bin下 mysql -u root -p 输入密码即可登陆MySQL 问号可以查看帮助 首先需要选择操作的数据库use database_name 然后可以进 ...

  4. Cloudify介绍

    一篇关于Cloudify的介绍,可以看一下:http://timeson.iteye.com/blog/1699730

  5. BZOJ3994:约数个数和(莫比乌斯反演:求[1,N]*[1,M]的矩阵的因子个数)

    Description  设d(x)为x的约数个数,给定N.M,求   Input 输入文件包含多组测试数据. 第一行,一个整数T,表示测试数据的组数. 接下来的T行,每行两个整数N.M. Outpu ...

  6. IOS SEL (@selector) 原理及使用总结(二)

    SEL消息机制工作原理是什么 引用下面文章: 我们在之前有提到,一个类就像一个 C 结构.NSObject 声明了一个成员变量: isa. 由于 NSObject 是所有类的根类,所以所有的对象都会有 ...

  7. BZOJ AC倒序总结

    https://fcw.moe/?p=177

  8. cockroachdb 安装试用(单机伪分布式)

    1. 下载 以下地址,选择对应的操作系统版本即可 https://www.cockroachlabs.com/docs/stable/install-cockroachdb.html 2. 启动 // ...

  9. idea创建文件类型失败(xml之类的失效

    https://blog.csdn.net/sutongxuevip/article/details/72832754

  10. 11.Python使用Scrapy爬虫小Demo(新手入门)

    1.前提:已安装好scrapy,且已新建好项目,编写小Demo去获取美剧天堂的电影标题名 2.在项目中创建一个python文件 3.代码如下所示: import scrapy class movies ...