一、运用gitee进行代码托管
1、gitee官网网址
https://gitee.com/
2、使用流程
(1)官网注册登录
(2)在git官网上新建仓库
(3)下载安装git上传工具
下载网址:https://git-scm.com/downloads
(4)在项目工程目录下新建.gitignore文件,文件内容如下
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
out/
*.class
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/
(5)在项目文件夹下鼠标右键启动Git Bash Here。
(6)运行"git init",将项目初始化为git管理项。
(7)执行"git add .",将所有文件加入git进行管理。
(8)执行"git commit -m “init”"将项目文件提交到本地
(9)执行”git remote add origin https://gitee.com/……“
(10)执行”git push -u origin “***”“,输入账号密码,上传代码。
3、在IDEA端实时上传代码
(1)打开file->setting,搜索git
(2)测试git。
(3)没有问题关闭返回。
(4)新建Git Remotes并通过commit进行上传。
二、运用面向对象的模式,遵循开闭原则,体现抽象封装、继承、多态的练习
1、求两个数的和、差、积、商。
(1)Number.java
public abstract class Number {
protected int num1;
protected int num2;
public Number(){}
public Number(int num1, int num2) {
this.num1 = num1;
this.num2 = num2;
}
public int getNum1() {
return num1;
}
public void setNum1(int num1) {
this.num1 = num1;
}
public int getNum2() {
return num2;
}
public void setNum2(int num2) {
this.num2 = num2;
}
public abstract int getResult();
}
(2)Add.java
public class Add extends Number{
public Add() {
super();
}
public Add(int num1, int num2) {
super(num1, num2);
}
public int getResult(){
return num1 + num2;
}
}
(3)Sub.java
public class Sub extends Number{
public Sub() {
super();
}
public Sub(int num1, int num2) {
super(num1, num2);
}
@Override
public int getResult(){
return num1 - num2;
}
}
(4)Multi.java
public class Multi extends Number{
public Multi() {
super();
}
public Multi(int num1, int num2) {
super(num1, num2);
}
@Override
public int getResult(){
return num1 * num2;
}
}
(5)Div.java
public class Div extends Number{
public Div() {
super();
}
public Div(int num1, int num2) {
super(num1, num2);
}
@Override
public int getResult() {
return num1 / num2;
}
}
(6)执行过程
System.out.print("num1:");
int num1 = as.nextInt();
System.out.print("num2:");
int num2 = as.nextInt();
Number numberAdd = new Add(num1,num2);
Number numberDiv = new Div(num1,num2);
Number numberMulti = new Multi(num1,num2);
Number numberSub = new Sub(num1,num2);
System.out.println("和:"+numberAdd.getAdd());
System.out.println("差:"+numberSub.getSub());
System.out.println("积:"+numberMulti.getMulti());
System.out.println("商:"+numberDiv.getDiv());
2、任意输入长、高,求长方形面积。没有输入时默认值为1,有一个输入时长高相等
(1)Rectangle.java
public class Rectangle {
protected int height;
protected int width;
public Rectangle(){
this.height = 1;
this.width = 1;
}
public Rectangle(int data){
this.height = data;
this.width = data;
}
public Rectangle(int height, int width) {
this.height = height;
this.width = width;
}
public int getHeight() {
return height;
}
public void setHeight(int height) {
this.height = height;
}
public int getWidth() {
return width;
}
public void setWidth(int width) {
this.width = width;
}
public int getArea(){
return 0;
}
public int getPerimeter(){
return 0;
}
}
(2)Area.java
public class Area extends Rectangle{
public Area() {
super();
}
public Area(int data) {
super(data);
}
public Area(int height, int width) {
super(height, width);
}
public int getArea(){
return this.height * this.width;
}
}
(3)Perimeter.java
public class Perimeter extends Rectangle{
public Perimeter() {
super();
}
public Perimeter(int data) {
super(data);
}
public Perimeter(int height, int width) {
super(height, width);
}
public int getPerimeter() {
return this.height * 2 + this.width * 2;
}
}
(4)执行流程
int inputTimes = 0;
int width = 0;
int height = 0;
System.out.print("请输入宽:");
// 按ctrl+d结束循环
while (as.hasNext()) {
inputTimes++;
if(inputTimes == 1){
width = as.nextInt();
System.out.print("请输入高:");
}else if(inputTimes == 2){
height = as.nextInt();
break;
}
}
Rectangle getArea = new Rectangle();
Rectangle getPerimeter = new Rectangle();
switch (inputTimes){
case 0:
getArea = new Area();
getPerimeter = new Perimeter();
break;
case 1:
getArea = new Area(width);
getPerimeter = new Perimeter(width);
break;
case 2:
getArea = new Area(width,height);
getPerimeter = new Perimeter(width,height);
break;
default:
break;
}
System.out.println("面积:"+getArea.getArea()+",周长:"+getPerimeter.getPerimeter());