类和对象

伴生类和伴生对象

匿名 (未验证) 提交于 2019-12-02 23:57:01
// 伴生对象 object Ass {} // 伴生类 class Ass {} 要求: 伴生类和伴生对象要在 同一个.scala文件 并且 名字相同 Java的静态成员和非静态成员都写在一个类里. 而scala静态成员需要写写在伴生对象里面. 伴生类需要用 new 来创建,而伴生对象不用new. 使用伴生对象创建伴生类的实例需要定义apply()方法 package base object runDM { def main ( args : Array [ String ]): Unit = { // // Array的伴生类和伴生对象 // // 伴生类方式创建 // val arrC = new Array[Int](5) // // 伴生对象方式创建 // val arrO = Array[Int](5) // new 创建Ass类 val assC = new Ass ( "new create!" ) // 使用伴生对象隐式使用apply方法创建 Ass类对象 val assO = Ass ( "create!" ) println ( assC . getName ) println ( assO . getName ) } } // Ass类的伴生对象 object Ass { // 静态方法 def show (): Unit = { println (

类和对象

匿名 (未验证) 提交于 2019-12-02 23:52:01
对比面向过程编程和面向对象编程: 面向过程指的是按照过程的先后顺序去解决问题,该思想编写程序就好比在设计一条流水线,是一种机械式的思维方式。 优点:复杂的问题简单化,流程化; 缺点:可扩展性变差; 面向对象的编程思想:核心是对象,对象是特征与技能的结合体,基于该思想编写程序就好比在创造一个世界,世界是由一个个对象组成,在上帝眼里任何存在的事物都是对象,任何不存在的东西也都可以创造出来,是一种上帝的思维方式。 类:对象是特征与技能的结合体,而类则是一系列对象相同特征与技能的结合体(对象是存在的事物,而类则是一个抽象的概念,站在不同角度产生的类和对象是不同的 。在生活中,先有对象,才有类;在编程中先定义类,再调用类产生对象。) 类的使用:类名+冒号,类名使用驼峰体,首字母必须大写,并不像变量名的命名规范是下划线; 1、先定义类 类是一系列对象相同特征(变量)与技能(函数)的结合体,即类体中最常见的就是变量与函数的定义。类体中函数代码会在类定义阶段立即执行。拿上述代码为例,类还并没有用函数名加括号调用就能打印出结果,结果是“====>>>”。 此外在定义类的时候,就相当于造了一个容器或者说产生一个类的名称空间,用来把执行类体中代码产生的名字都放进去。 类中属性的增删查改 class OldboyStudent: #相同的特征 school='oldboy' #相同的技能 def

Java自学-类和对象 枚举类型

易管家 提交于 2019-12-02 23:00:33
枚举类型 步骤 1 : 预先定义的常量 枚举enum是一种特殊的类(还是类),使用枚举可以很方便的定义常量 比如设计一个枚举类型 季节,里面有4种常量 public enum Season { SPRING,SUMMER,AUTUMN,WINTER } 一个常用的场合就是switch语句中,使用枚举来进行判断 注:因为是常量,所以一般都是全大写 public class HelloWorld { public static void main(String[] args) { Season season = Season.SPRING; switch (season) { case SPRING: System.out.println("春天"); break; case SUMMER: System.out.println("夏天"); break; case AUTUMN: System.out.println("秋天"); break; case WINTER: System.out.println("冬天"); break; } } } public enum Season { SPRING,SUMMER,AUTUMN,WINTER } 步骤 2 : 使用枚举的好处 假设在使用switch的时候,不是使用枚举,而是使用int,而int的取值范围就不只是1-4

Java自学-类和对象 传参

易管家 提交于 2019-12-02 22:51:46
Java中的传参 变量有两种类型 基本类型 和类类型 参数也是变量,所以传参分为 基本类型传参 类类型传参 步骤 1 : 基本类型传参 基本类型传参 在方法内,无法修改方法外的基本类型参数 public class Hero { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 public Hero(){ } //回血 public void huixue(int xp){ hp = hp + xp; //回血完毕后,血瓶=0 xp=0; } public Hero(String name,float hp){ this.name = name; this.hp = hp; } public static void main(String[] args) { Hero teemo = new Hero("提莫",383); //血瓶,其值是100 int xueping = 100; //提莫通过这个血瓶回血 teemo.huixue(xueping); System.out.println(xueping); } } 步骤 2 : 引用与= 如果一个变量是基本类型 比如 int hp = 50; 我们就直接管hp叫变量 =表示赋值的意思 。 如果一个变量是类类型 比如 Hero h

Python类和对象

匿名 (未验证) 提交于 2019-12-02 22:51:30
在设计之初,Python 就被设计成支持面向对象的编程语言,因此 Python 完全能以面向对象的方式编程。而且 Python 的面向对象比较简单,它不像其他面向对象语言提供了大量繁杂的面向对象特征,它致力于提供简单、够用的语法功能。 正因为如此,在 Python 中创建一个类和对象都很容易。Python 支持面向对象的三大特征:封装、继承和多态,子类继承父类同样可以继承到父类的变量和方法。 面向对象相关术语 在系统学习面向对象编程之前,初学者要了解有关面向对象的一些术语。当和其他人讨论代码的时候,或者尝试查找我们遇到的问题的解决方案时,知道正确的术语会很有帮助。 面向对象相关术语 在系统学习面向对象编程之前,初学者要了解有关面向对象的一些术语。当和其他人讨论代码的时候,或者尝试查找我们遇到的问题的解决方案时,知道正确的术语会很有帮助。 面向对象中,常用术语包括: 类:可以理解是一个模板,通过它可以创建出无数个具体实例。比如,前面编写的 tortoise 表示的只是乌龟这个物种,通过它可以创建出无数个实例来代表各种不同特征的乌龟(这一过程又称为类的实例化)。 对象:类并不能直接使用,通过类创建出的实例(又称对象)才能使用。这有点像汽车图纸和汽车的关系,图纸本身(类)并不能为人们使用,通过图纸创建出的一辆辆车(对象)才能使用。 属性:类中的所有变量称为属性。例如,tortoise

Python里的类和对象简介

匿名 (未验证) 提交于 2019-12-02 22:11:45
Python里的类 对象的属性主要是指 主要的特征和参量,而方法主要是指函数; 类是一个具有一定特征和方法的集合,而对象是类的一个; 类的创立一般以 大写字母 为开头 类的创立举例如下: class T urtle: % 特征参量: 方法 def climb(self): OO:面向对象( Object Oriented),python是一种纯粹的面向对象的编程语言 面向对象编程的特征: (1)封装 (2)继承 (3)多态 例如: >>> class 继承 >>> list2=Mylist() >>> list2.append(2) >>> list2 [2] >>> class A: >>> class B: >>> a=A() >>> b=B() 多态 woshixiaoa >>> b.fun() 整体封装 三者之间的关系如下图所示:

3.类和接口_EJ

匿名 (未验证) 提交于 2019-12-02 20:37:20
第13条: 使类和成员的可访问性最小化 良好的模块设计能隐藏其内部数据和其他实现细节,模块之间只通过它们的API进行通信。java语言提供了许多机制来协助隐藏信息。访问控制机制决定了类、接口和成员的可访问性,实体的可访问性是由该实体申明所在的位置,以及该实体申明中所出现的访问修饰符共同决定。正确使用修饰符对于实现信息隐藏非常关键。 1.尽可能使每个类或成员不被外界访问。对于成员有四种可能的访问级别。 a.私有的--只有在申明该成员的顶层类内部才可以访问这个成员。 b.包级私有--申明该成员的包内部的任何类都可以访问这个成员。 c.受保护的--申明该成员的包内部的任何类都可以访问这个成员。并且该类的子类可以访问这个成员。 d.公有的--在任何地方都可以访问该成员。 2.实例域绝不能是公有的。一旦使这个域称为公有的,就放弃了对存储在这个域中的值进行限制的能力。 还要注意,长度非零的数组总是可变的。修正这个问题有两个方法,使数组变成私有的,并增加一个公有的不可变列表,或添加一个方法,它返回私有数组的一个备份。 public class ArrayTest { //potential security hole //public static final Object[] VALUES = {"one", "two", "three"}; private static final

Java 对象和类

霸气de小男生 提交于 2019-12-02 19:23:47
Java作为一种面向对象语言。支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载 本节我们重点研究对象和类的概念。 对象 :对象是类的一个实例( 对象不是找个女朋友 ),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。 类 :类是一个模板,它描述一类对象的行为和状态。 下图中 男孩(boy) 、 女孩(girl) 为 类(class) ,而具体的每个人为该类的 对象(object) : Java中的对象 现在让我们深入了解什么是对象。看看周围真实的世界,会发现身边有很多对象,车,狗,人等等。所有这些对象都有自己的状态和行为。 拿一条狗来举例,它的状态有:名字、品种、颜色,行为有:叫、摇尾巴和跑。 对比现实对象和软件对象,它们之间十分相似。 软件对象也有状态和行为。软件对象的状态就是属性,行为通过方法体现。 在软件开发中,方法操作对象内部状态的改变,对象的相互调用也是通过方法来完成。 Java中的类 类可以看成是创建Java对象的模板。 通过下面一个简单的类来理解下Java中类的定义: public class Dog { String breed ; int age ; String color ; void barking ( ) { } void hungry ( ) { } void sleeping ( )

java对象和字符串学习

牧云@^-^@ 提交于 2019-12-02 17:08:33
内部类分类 按照内部类位置分类: 成员位置:在成员位置定义的类,被称为成员内部类 局部位置:在局部位置定义的类,被称为局部内部类 成员内部类: 格式:class Outer{class Inner{}} 创建内部类对象访问内部类: 格式:Outer.Inner inner = new Outer().new Inner(); 成员内部类的修饰符: 把成员内部类当成属性,属性有的修饰符内部类都有。 内部类访问特点: 1.内部类可以直接访问外部类的成员,包括私有。 2.外部类要访问内部类的成员,必须创建对象。 局部内部类: 举例说明: class Outer{ public void show(){ class Inner{ public void test(){ } } new Inner().test(); } } class test{ public static void main(String[] args) { new Outer().show(); } } 局部内部类的特点 1.可以直接访问外部类的成员 2.可以创建内部类对象,通过对象调用内部类方法,来使用局部内部类功能 3.局部内部类访问局部变量必须用final修饰(JDK1.7之前要加final不然报错 但是在JDK1.8 不用加 不会报错) 静态内部类:

ES6中的类和对象

好久不见. 提交于 2019-12-02 15:58:10
1.类class 类抽象了对象的公共部分,它泛指某一大类, 对象特指某一个,通过类实例化一个具体的对象 面对对象的思维特点: 1.抽取(抽象)对象共用的属性和行为组织(封装)成一个类(模板) 2.对类进行实例化,获取类的对象 2.类的继承   程序中的继承:子类可以继承父类的属性和方法; 语法: class Father { //父类 } class Son extend Father{ //子类 } super关键字 :用于访问和调用对象父类上的函数,可以调用父类的构造函数,也可以调用父类的普通函数 来源: https://www.cnblogs.com/zhengyulu/p/11753011.html