当前位置: 首页 > news >正文

分享惠网站怎么做家装设计师要学什么

分享惠网站怎么做,家装设计师要学什么,搭建平台载体,电子商务网站策划前言#xff1a; 多态#xff0c;包#xff0c;final关键字#xff0c;权限修饰符和代码块 文章目录 一、多态1.1 概念1.2 多态存在条件1.3 多态中调用成员的特点1.4 instanceof关键字 二、包三、权限修饰符四、final 关键字4.1 修饰类4.2 修饰方法4.3 修饰变量 五、代码块… 前言 多态包final关键字权限修饰符和代码块 文章目录 一、多态1.1 概念1.2 多态存在条件1.3 多态中调用成员的特点1.4 instanceof关键字 二、包三、权限修饰符四、final 关键字4.1 修饰类4.2 修饰方法4.3 修饰变量 五、代码块5.1 局部代码块5.2 静态代码块5.3 构造代码块 一、多态 1.1 概念 首先我们要了解一下多态性和多态这是两个不同的概念多态性包括很多例如运行时多态编译时多态性等而多态是具体的多态性实现。面向对象中的多态指的是运行时多态性的实现。 运行时多态 方法的重写是运行时多态性的一种体现。同类型的对象表现出不同的形态即子类可以重写父类的方法通过父类引用指向子类对象时调用子类的方法实现。 1.2 多态存在条件 多态有以下的存在条件 子类必须继承自同一个父类或者实现同一个接口有方法重写父类类型的引用指向子类对象。 1.3 多态中调用成员的特点 特点 变量调用静态绑定早期绑定这意味着即使引用类型是父类类型访问属性时仍然使用父类中定义的变量。如果父类中没有这个变量会编译失败。 class Animal {String name Animal;void makeSound() {System.out.println(Animal makes a sound);} }class Dog extends Animal {String name Dog;Overridevoid makeSound() {System.out.println(Dog barks);} }public class Main {public static void main(String[] args) {Animal myDog new Dog();System.out.println(myDog.name); // 输出AnimalmyDog.makeSound(); // 输出Dog barks} }方法调用动态绑定后期绑定方法调用在运行时而不是在编译时决定这意味这调用的方法要看实际对象的类型。调用的方法一定要是重写的方法。 class Animal {void makeSound() {System.out.println(Animal makes a sound);} }class Dog extends Animal {Overridevoid makeSound() {System.out.println(Dog barks);} }class Cat extends Animal {Overridevoid makeSound() {System.out.println(Cat meows);} }public class Main {public static void main(String[] args) {//父类类型的引用指向子类对象Animal myDog new Dog();Animal myCat new Cat();myDog.makeSound(); // 输出Dog barksmyCat.makeSound(); // 输出Cat meows} }1.4 instanceof关键字 instanceof 关键字是 Java 中用于测试对象是否为某个特定类或其子类的实例的重要工具。它返回一个布尔值指示对象是否是指定类或接口的一个实例。instanceof 关键字常用于安全地进行向下转型将父类引用转换为子类引用之前的类型检查。 instanceof 的语法 object instanceof ClassName其中object 是要进行检查的对象ClassName 是要检查的类或接口。 class Animal { }class Dog extends Animal { }public class Main {public static void main(String[] args) {Animal myAnimal new Dog();// 检查 myAnimal 是否是 Dog 类的实例if (myAnimal instanceof Dog) {System.out.println(myAnimal 是 Dog 类的一个实例);} else {System.out.println(myAnimal 不是 Dog 类的一个实例);}// 检查 myAnimal 是否是 Animal 类的实例if (myAnimal instanceof Animal) {System.out.println(myAnimal 是 Animal 一个的实例);} else {System.out.println(myAnimal 不是 Animal 一个的实例);}} }输出 myAnimal 是 Dog 类的一个实例 myAnimal 是 Animal 一个的实例除此之外JDK14提出了新特性 object instanceof ClassName newObject首先判断对象 object 存储的数据是不是 ClassName 类型如果是则返回true并转换为 ClassName 类型的newObject 对象。 二、包 包package 是用于组织类和接口的一种机制。包提供了一种命名空间管理功能可以避免命名冲突并且有助于组织大型项目的代码结构。使用包还可以控制访问权限限制某些类和接口只能在同一个包中访问。操作如下 在类中声明包 package com.example.myapp;导入包 使用 import 关键字导入其他包中的类或接口。 import com.example.myapp.User;如果要导入整个包可以使用通配符 * import com.example.myapp.*;在不同包下使用相同类 //使用全类名的形式即可。 //全类名包名 类名 //拷贝全类名的快捷键选中类名crtl shift alt c 或者用鼠标点copy再点击copy Reference com.example.demo1.Student s1 new com.example.demo1.Student(); com.example.demo2.Student s2 new com.example.demo2.Student();三、权限修饰符 ​ 在Java中提供了四种访问权限使用不同的访问权限修饰符修饰时被修饰的内容会有不同的访问权限。 public公共的所有地方都可以访问。 protected本类 本包其他包中的子类都可以访问。 默认没有修饰符本类 本包可以访问。注意默认是空着不写不是default private私有的当前类可以访问。 类内部同一包不同包中的子类不同包的无关类publicprotected默认private 四、final 关键字 使用final 关键字表示修饰的内容不可变。 final 变量值初始化后不可改变即有且仅能被赋值一次。final 方法不能被子类重写。final 类不能被继承。 4.1 修饰类 final 类不能被继承确保类的完整性。 public final class FinalClass {// 类内容 }// 编译错误无法继承 final 类 // public class SubClass extends FinalClass { // } 4.2 修饰方法 final 方法不能被子类重写保证方法行为不被修改。 public class ParentClass {public final void finalMethod() {System.out.println(This method cannot be overridden);} }public class ChildClass extends ParentClass {// 编译错误无法重写 final 方法// public void finalMethod() {// System.out.println(Trying to override);// } }4.3 修饰变量 局部变量 必须在使用前初始化。 public void myMethod() {final int localVar;localVar 10;//localVar 20; 编译错误无法修改 final 变量 }成员变量 必须在声明时或构造器中初始化。 public class MyClass {final int CONSTANT 10;final int anotherConstant;public MyClass(int value) {this.anotherConstant value;}public void method() {// CONSTANT 20; // 编译错误无法修改 final 变量} }注意final 修饰不同类型时的区别 final 修饰基本数据类型包括int、char、float、boolean 当 final 修饰基本数据类型变量时该变量的值在初始化后不可更改。 public class FinalExample {public static void main(String[] args) {final int x 10;// x 20; // 编译错误无法修改 final 变量的值System.out.println(Final primitive value: x);} }final 修饰引用数据类型 当 final 修饰引用数据类型变量时该变量的引用在初始化后不可更改但引用的对象的内容可以更改。 public class FinalReferenceExample {public static void main(String[] args) {final StringBuilder sb new StringBuilder(Hello);// sb new StringBuilder(World); // 编译错误无法更改 final 引用// 可以修改对象的内容sb.append( World);System.out.println(Final reference value: sb.toString());} }五、代码块 在 Java 中代码块也称为块是一组被大括号 {} 包围的语句。代码块分为以下几种类型构造代码块、静态代码块、局部代码块。每种类型的代码块在程序执行中的作用和执行时机各不相同。 5.1 局部代码块 局部代码块是定义在方法中的一组语句用于限制变量的作用范围。 public class LocalCodeBlockExample {public static void main(String[] args) {// 局部代码块{int x 30;System.out.println(Local code block: x x);}// System.out.println(x); // 编译错误x 作用范围仅限于局部代码块} }5.2 静态代码块 静态初始化块在类加载时执行一次用于初始化静态变量。静态初始化块在类加载时执行而不是在创建实例时执行。 public class StaticInitializationBlockExample {private static int x;// 静态初始化块static {x 20;System.out.println(Static initialization block: x x);}public StaticInitializationBlockExample() {System.out.println(Constructor: x x);}public static void main(String[] args) {StaticInitializationBlockExample example new StaticInitializationBlockExample();} } //运行结果 //Static initialization block: x 20 //Constructor: x 205.3 构造代码块 构造块在每次创建类的实例时执行。它可以用来初始化实例变量。 public class InstanceInitializationBlockExample {private int x;// 实例初始化块{x 10;System.out.println(Instance initialization block: x x);}public InstanceInitializationBlockExample() {System.out.println(Constructor: x x);}public static void main(String[] args) {InstanceInitializationBlockExample example new InstanceInitializationBlockExample();} } //运行结果 //Instance initialization block: x 10 //Constructor: x 10如果你喜欢这篇文章点赞评论关注⭐️哦 欢迎大家提出疑问以及不同的见解。
http://www.hkea.cn/news/14464005/

相关文章:

  • 公司的网站建设公司网站如何做京东联盟
  • 静态网站案例零食网站策划书
  • 北京建设网站的公司哪家好网站没有权重
  • 怎么样让网站快速收录梁园区官方网站
  • 襄阳 网站建设谷歌seo站内优化
  • 咸阳 网站建设网站如何调用百度地图
  • 做网站需要什么配置服务器企业网站建设的必要性及维护
  • 建筑网站大全免费电子商务解决方案
  • 营销型网站建设实战深圳微网站建设公司
  • 北京网站建设分析论文微信开发者工具可视化怎么打开
  • 创维爱内购网站咸阳网站建设哪家好
  • 文化传媒网站php源码动漫网页制作
  • 企业怎么做网站做网站有必要?
  • 做网站赚钱平台葫芦岛高端网站制作
  • 永济市住房保障和城乡建设管理局网站wordpress 手动安装
  • 广西网站开发软件网站建设规划公司
  • 网站服务器 英文电子商务网页制作试题及答案
  • 毕业设计做网站怎么做怎么彻底删除2345网址导航
  • 垂直门户网站的盈利模式探讨国内免费自建网站
  • 焦作做网站推广活动营销方案
  • 政务网站建设原则福建 建设网站
  • 个性化网站好看的模板
  • 山东省建设工程质量监督网站做网站违法
  • 盐田高端网站建设网站建设页面设计规格
  • 北京网站建设 知乎wordpress 底部导航插件
  • 那里有正规网站开发培训学校视频营销发布平台包括
  • 西安网站制作的公司电脑系统做的好的网站好
  • 焦作网站建设公司哪家好wordpress缓存设置
  • 企业营销网站建设策划书wordpress grace 8.0
  • 智能家居网站建设方案购物网站首页模板下载