- 博客(40)
- 收藏
- 关注
原创 #C++#封装案例(点和圆的位置关系)
#C++#封装案例(点和圆的位置关系)#include <iostream>using namespace std;//点和圆的位置关系class Point{private: int m_x; int m_y;public: void setX(int x){ m_x=x; } void setY(int y){ m_y=y; } int getX(){ return m_x; } int getY(){ return m_y; }};cl
2020-11-14 15:19:27
264
原创 #C++#封装案例(立方体)
#C++#封装案例(立方体)#include <iostream>#include <string>using namespace std;class Cube{private: int l; int w; int h;public: void setL(int l_){ l=l_; } int getL(){ return l; } void setW(int w_){ w=w_; } int getW(){ return w; }
2020-11-13 21:42:00
242
3
原创 #C++#封装(成员属性私有化)
#C++#封装(成员属性私有化)#include <iostream>#include <string>using namespace std;//成员属性设置为私有//1、可以自己控制读写权限 //2、对于写可以检测数据的有效性class Person{public: //设置姓名 void setName(string name_){ name=name_; } //获取姓名 string getName(){ return name; }
2020-11-13 20:03:20
204
原创 #C++#封装(struct 和 class 的区别)
#C++#封装(struct 和 class 的区别)#include <iostream>#include <string>using namespace std;//struct和class的区别//struct默认权限是 公共 public //class默认权限是 私有 privateclass C1{ int m_A;//默认权限是私有 }; struct C2{ int m_A;//默认权限是公有 };int main(){ C1 c1;
2020-11-13 19:37:35
146
原创 #C++#封装3(访问权限)
#C++#封装3(访问权限)#include <iostream>#include <string>using namespace std;//访问权限:3种//公共权限 public 成员 类内可以访问 类外也可以访问 //保护权限 protected 成员 类内可以访问 类外不可以访问 子可以访问父中的保护内容 //私有权限 private 成员 类内可以访问 类外不可以访问 子不可以访问父中的私有内容 class Person{pub
2020-11-13 19:25:58
57
原创 #C++#封装2
#C++#封装2#include <iostream>#include <string>using namespace std;//设计一个学生类,属性有姓名和学号,可以给姓名和学号赋值,可以显示学生的姓名和学号class Student{public: //类中的属性和行为同一称为成员 string name; //姓名 (成员属性,成员变量) int id; //学号 void show(){ cout<<"姓名是:"<<nam
2020-11-13 19:06:25
79
原创 #C++#封装1
#C++#封装1#include <iostream>using namespace std;//圆周率const double PI=3.14; //设计一个圆类,求圆的周长//圆求周长的公式:2*PI*半径 //class 代表设计一个类,类后面紧跟着的就是类名称class Circle{ //访问权限 //公共权限public: //属性 int m_r; //行为 //获取圆的周长 double calculate2C(){ return 2*PI
2020-11-13 18:44:26
46
原创 #JAVA#面向对象(接口练习)
#JAVA#面向对象(接口练习)package 接口;interface Jumping{ public abstract void jump();}abstract class Animal{ private String name; private int age; public Animal() {} public Animal(String name,int age) { this.name=name; this.age=age; } public String get
2020-11-08 23:23:33
142
原创 #JAVA#面向对象(接口与类之间的关系)
#JAVA#面向对象(接口与类之间的关系)package 接口;/* 类与类: 继承关系,只能单继承,可以多层继承 类与接口: 实现关系,可以单实现,也可以多实现 并且还可以在继承一个类的同时实现多个接口 接口与接口: 继承关系,可以单继承,也可以多继承 */interface Father{ public abstract void show();}interface Mother{ public abstract void show2();}int
2020-11-08 15:58:18
757
1
原创 #JAVA#面向对象(接口的成员特点)
#JAVA#面向对象(接口的成员特点)package 接口;/* 接口的成员特点: 成员变量:只能是常量,并且是静态的 默认修饰符:public static final 建议:自己手动给出 构造方法:接口没有构造方法 成员方法:只能是抽象方法 默认修饰符:public abstract 建议:自己手动给出 所有类都默认继承自一个类:obj
2020-11-07 19:19:51
82
原创 #JAVA#面向对象(接口)
#JAVA#面向对象(接口)package 接口;/* 接口的特点: A:接口用关键字interface表示 interface 接口名 { } B:类实现接口用implements表示 class 类名 implements 接口名 { } C:接口不能实例化 按照多态的方式来实例化 D:接口的子类 a:可以是抽象类,但是意义不大 b:可以是具体的,要重写接口中所有的抽象方法(推荐方案) 由此可见: A:具体类多态(几乎没有) B:
2020-11-07 18:48:38
58
原创 #JAVA#面向对象(抽象类练习)
#JAVA#面向对象(抽象类练习)package 抽象类;abstract class Animal{ private String name; private int age; public Animal() {} public Animal(String name,int age) { this.name=name; this.age=age; } public String getName() { return name; } public int getAge()
2020-11-07 14:53:12
172
原创 #JAVA#面向对象(抽象类)
#JAVA#面向对象(抽象类)package 抽象类;/*抽象类的概述: 动物不应该定义为具体的东西,而且动物中的吃、睡等也不应该是具体的。 我们把一个不是具体的功能称为抽象的功能,而一个类中如果有抽象的功能,该类必须是抽象类。抽象类的特点: A:抽象类和抽象方法必须用abstract关键字修饰 B:抽象类中不一定有抽象方法,但是有抽象方法的类必须定义为抽象类 C:抽象类不能实例化 因为它不是具体的 抽象类有构造方法,但是不能实例化,构造方法的作用是用于子类访问父类数据的初始化
2020-11-06 21:25:27
50
原创 #JAVA#面向对象(多态练习)
#JAVA#面向对象(多态练习)package 多态;class Animal{ public void eat() { System.out.println("吃饭"); }}class Dog extends Animal{ public void eat() { System.out.println("狗吃肉"); } public void lookdoor() { System.out.println("狗看门"); }}class Cat extends An
2020-11-05 23:05:01
134
原创 #JAVA#面向对象(多态3)
#JAVA#面向对象(多态3)package 多态;/*多态的弊端: 不能使用子类的特有功能*/ class Fu{ public void show() { System.out.println("show Fu"); }}class Zi extends Fu{ public void show() { System.out.println("show Zi"); } public void method() { System.out.println("metho
2020-11-05 20:48:46
57
原创 #JAVA#面向对象(多态2)
#JAVA#面向对象(多态2)package 多态;/*多态的好处: A:提高了代码的维护性(继承保证) B:提高了代码的扩展性 猫狗案例代码 */ class Animal{ public void eat(){ System.out.println("eat"); } public void sleep(){ System.out.println("sleep"); }}class Dog extends Animal{ public void eat(){
2020-11-04 22:09:14
93
原创 #JAVA#面向对象(多态)
#JAVA#面向对象(多态)package 多态;/*多态:同一个对象(事物),在不同时刻体现出来的不同状态举例: 猫是猫,猫是动物 水(液体,固体,气体), 多态的前提: A:要有继承关系 B:要有方法重写 其实没有也是可以的,但是如果没有这个就没有意义 动物 d = new 猫(); d.show(); 动物 d = new 狗(); d.show(); C:要有父类引用指向子类 父类 f = new 子类(); 用代码体现一下多态:多态中的
2020-11-04 20:58:26
48
原创 #JAVA#面向对象(final关键字)
#JAVA#面向对象(final关键字)package final关键字;/* 继承的代码体现 由于继承中方法有一个现象:方法重写 所以,父类的功能,就会被子类给覆盖掉 有些时候,我们不想让子类去覆盖掉父类的功能 针对这种情况,java提供了一个关键字:final final:最终的意思,常见的是它可以修饰类、方法、变量 */class Fu{ public final void show() { System.out.println("这里是绝密资源,任何
2020-11-02 21:00:47
47
原创 #JAVA#面向对象(方法重写1)
#JAVA#(面向对象)方法重写package 继承;/* 方法重写:子类中出现了和父类中方法声明一模一样的方法 方法重载:本类中出现的方法名一样,参数列表不同的方法,与返回值无关 子类对象调用方法的时候: 先找子类本身,再找父类 方法重写的应用: 当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法 这样,既沿袭了父类的功能,又定义了子类特有的内容 案例: A:定义一个手机类 B:通过研究,我发明了一个新手机,这个手机的作用是再打完电话后,可以听天气
2020-11-01 21:20:54
110
原创 #JAVA#面向对象(使用继承的学生老师案例)
#JAVA#面向对象(使用继承的学生老师案例)package 案例;class Person{ private String name; private int age; public Person() {} public Person(String name,int age) { this.name=name; this.age=age; } public void setName(String name) { this.name=name; } public void s
2020-11-01 20:07:40
305
1
原创 #JAVA#面向对象(方法重写2)
#JAVA#面向对象(方法重写)package 继承;/* 方法重写的注意事项: A:父类中的私有方法不能被重写 因为父类私有方法子类根本无法继承 B:子类重写父类方法时,访问权限不能更低,最好一致 C:父类静态方法,子类也必须通过静态方法重写 子类重写父类方法的时候,最好声明一模一样*/ class Father{ //private void show() {} /* public void show() { System.out.pri
2020-11-01 15:37:12
67
原创 #JAVA#面向对象(继承中成员方法的关系)
#JAVA#面向对象(继承中成员方法的关系)package 继承;/* 继承中成员方法的关系: A:子类中的方法和父类中的方法声明不一致 B:子类中的方法和父类中的方法声明一致 通过子类调用方法: a:先找子类中,看看有没有这个方法,有就使用 b:再看父类中有没有这个方法,有就使用 c:如果没有就报错*/ class Father{ public void show() { System.out.println("show Father"); }}
2020-10-31 21:53:14
193
原创 #JAVA#面相对象(继承中的构造方法)
#JAVA#面相对象(继承中的构造方法)package 继承;/* 继承中构造方法的关系 A:子类中所有的构造方法默认都会访问父类中空参的构造方法 原因:因为子类会继承父类中的数据,可能还会使用父类的数据 所以,子类初始化之前,一定要先完成父类数据的初始化 注意:子类每一个构造方法的第一条语句默认都是:super();*/ class Father{ public Father() { System.out.println("Fa
2020-10-31 17:24:23
78
原创 #JAVA#面向对象(this和super的区别)
#JAVA#面向对象(this和super的区别)package 继承;/* 问题:不仅仅要输出局部范围的num,还要输出成员范围的num。 如果还要输出父类成员范围的num,java提供了关键字:super this和super的区别: this代表本类对象的引用 super代表父类存储空间的标识(可以理解为父类引用,可以操作父类的成员) 如何用? A:调用成员变量 this.成员变量 调用本
2020-10-31 16:23:07
69
原创 #JAVA#面向对象(工具类中使用静态)
#JAVA#面向对象(工具类中使用静态)package 工具类中使用静态;/* 对数组进行操作 */class Arraytool{ private Arraytool() {} //把构造方法私有,外界就不能创建对象了 public static void printarray(int[] arr) { for(int i=0;i<arr.length;i++) { if(i==arr.length-1) { System.out.print(arr
2020-10-29 21:16:24
182
2
原创 #JAVA#面向对象(继承3)
#JAVA#面向对象(继承3)package 继承;/* 类的组成部分的各自关系: 继承中成员变量的关系: A:子类中的成员变量和父类中的成员变量名称不一样 B:子类中的成员变量和父类中的成员变量名称一样 a: 在子类方法的局部范围找,有就使用 b: 在子类的成员范围找,有就使用 c: 在父类的成员范围找,有就使用 d: 如果还找不到,就报错*/ class Father{ public int num=1
2020-10-28 21:18:48
69
原创 #JAVA#面向对象(继承2)
#JAVA#面向对象(继承2)package 继承;/* java中继承的特点: A:java中只支持单继承,不支持多继承 有些语言是支持多继承的,格式:extends 类1,类2,... B:java支持多层继承(继承体系)*/ /*class Father{ }class Mother{ }class Son extends Father,Mother(错误){ }*/class GrandFather{ public void show()
2020-10-28 19:40:12
136
原创 #JAVA#面向对象(继承1)
#JAVA#面向对象(继承)//定义学生类class student(){ String name; int age; public student(){ } //getXxx()/setXxx() public void eat(){ System.out.println("吃饭"); }} //定义老师类class tescher(){ String name; int age; public student(){ } //getXxx()/setXxx() p
2020-10-28 18:57:50
75
原创 #JAVA#面向对象(main方法的格式讲解)
#JAVA#面向对象(main方法的格式讲解)package main方法的格式讲解;/* main方法的格式讲解: public static void main(String args[]){...} public:公共的,访问权限是最大的,由于main方法是被jvm调用,所以权限要够大 static:静态的,不需要创建对象,通过类名就可以,方便jvm的调用 void:方法的返回值是返回给调用者,而main方法是被jvm调用,返回内容给jvm没有任何意义 main:是一
2020-10-28 16:28:04
229
原创 #JAVA#面向对象(static关键字)
#JAVA#面向对象(static关键字)package static关键字;/* 定义一个人类 姓名和年龄都是不同的,但选取的国籍都是一样的,每次创建对象,在堆内存都要开辟这样的空间,浪费 针对多个对象有共同的成员变量值时,JAVA就提供了一个关键字来修饰:static */class person{ //姓名 String name; //年龄 int age; //国籍 static String country; public person() { } public
2020-10-27 22:29:23
106
原创 #JAVA#面向对象(标准**类书写)
#JAVA#面向对象(标准**类书写)package 标准代码书写;/*一个标准代码的最终版学生类: 成员变量:name,age 构造方法:无参,带两个参 成员方法: getXxx()/setXxx() show():输出该类所有成员变量值 给成员变量赋值: A:setXxx() B:构造方法 输出成员变量值得方式: A:通过getXxx()分别获取然后拼接 B;通过调用show()方法 */class student{ private String name
2020-10-26 21:45:53
134
原创 #JAVA#面向对象(成员方法的分类及使用)
#JAVA#面向对象(成员方法的分类及使用)package 成员方法的分类及使用;/*类的组成:成员变量,成员方法,构造方法成员方法:根据返回值类型: void类型 非void类型 形式参数: 空参方法 非空参方法 */class Student{ public String getString() { return "helloworld"; } public void show() { System.out.println("show"); }
2020-10-26 21:08:28
137
原创 #JAVA#面向对象(构造方法及构造方法的重载)
#JAVA#面向对象(构造方法及构造方法的重载)package 构造方法;/* 构造方法: 给对象的数据进行初始化 格式:方法名与类名相同 没有返回值类型,连void都没有 没有具体的返回值构造方法的注意事项:如果我们没有给出构造方法,系统将自动提供一个无参的构造方法 如果我们给出了构造方法,系统将不再提供默认的无参构造方法 */class Student{ private String
2020-10-26 18:19:34
131
2
原创 #JAVA#面向对象(this关键字)
#JAVA#面向对象(this关键字)package this关键字;/* this:是当前类的对象引用,简单的记,它就代表当前类的一个对象 注意:谁调用这个方法,在该方法内部的this就调用谁 this场景:解决局部变量隐藏成员变量*///定义学生类class student{ //姓名 private String name; //年龄 private int age; //姓名获取值 public String getName() { return name; }
2020-10-26 15:09:36
50
原创 #JAVA#面向对象(private关键字)
#JAVA#面向对象(private关键字)/* private: 是一个权限修饰符 可以修饰成员变量和成员方法 被其修饰的成员只能在本类中访问 */class Demo{ //int num=10; //用private修饰 private int num=10; public void show() { System.out.println(num); } private void method() { System.out.println("method");
2020-10-26 14:14:54
91
2
原创 #JAVA#面对对象(封装的概述)
#JAVA#面对对象(封装的概述)package 封装的概述;/* 定义一个学生类 成员变量:name,age 成员方法:show()方法,显示所有的成员变量 通过对象给成员变量赋值,可以赋值一些非法数据,这是不合理的, 应该在赋值之前,先对数据进行判断 StudentDemo类是一个测试类,测试类一般只创建对象,调用方法, 所以,这个判断应该定义在Student类中 成员变量的位置不可以进行数据判断,因为做数据校验必须要依靠逻辑语句, 逻辑语句是应该定义在方法中
2020-10-25 22:20:09
59
原创 #JAVA#面向对象(匿名对象)
#JAVA#面向对象(匿名对象)package 匿名对象;/*匿名对象:就是没有名字的对象匿名对象的应用场景:A:调用方法,仅仅只调用一次的时候 注意:调用多次的时候不合适 匿名对象调用完毕就被回收B:匿名对象可以作为实际参数传递*/class Student{ public void show() { System.out.println("我爱学习"); }}class StudentDemo{ public void method(Student
2020-10-25 21:04:16
47
原创 #JAVA#面向对象(方法的形式参数是类名的时候如何调用)
#JAVA#面向对象(方法的形式参数是类名的时候如何调用)package 形式参数问题;/*基本类型:形式参数的改变不影响实际参数 引用类型:形式参数的改变直接影响实际参数*/import java.io.*;//形式参数是基本类型class Demo{ public int sum(int a,int b) { return a+b; }}//形式参数是引用类型class Student{ //类是引用类型 public void show()
2020-10-25 17:16:08
244
1
原创 洛谷:三角形分类
标题——洛谷:三角形分类#include <stdio.h>#include <iostream>#include <bits/stdc++.h>using namespace std;int main(){ int a[3]; for(int i=0;i<3;i++){ scanf("%d",&a[i]); } sort(...
2020-04-09 23:18:55
400
原创 洛谷:三角函数
标题——洛谷:三角函数#include <stdio.h>#include <bits/stdc++.h> //万能库 #include <iostream>using namespace std;int main(){ int a[5]; for(int i=0;i<3;i++){ scanf("%d",&a[i])...
2020-02-15 23:27:02
351
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人