this、package、import关键词的使用

this关键字的使用

  • 1.this可以用来修饰、调用:属性、方法、构造器
  • 2.this修饰属性和方法:
  • this理解为:当前对象 或 当前正在创建的对象
  • 2.1 在类的方法中,我们可以使用"this.属性"或"this.方法"的方式,调用当前对象属性或方法。但是,
  • 通常情况下,我们都选择省略"this."。特殊情况下,如果方法的形参和类的属性同名时,我们必须显式 的使用"this.变量"的方式,表明此变量是属性,而非形参。
  • 2.2 在类的构造器中,我们可以使用"this.属性"或"this.方法"的方式,调用当前正在创建的对象属性或方法。
  • 但是,通常情况下,我们都选择省略"this."。特殊情况下,如果构造器的形参和类的属性同名时,我们必须显式 的使用"this.变量"的方式,表明此变量是属性,而非形参。
  • . this调用构造器
  • ① 我们在类的构造器中,可以显式的使用"this(形参列表)"方式,调用本类中指定的其他构造器
  • ② 构造器中不能通过"this(形参列表)"方式调用自己
  • ③ 如果一个类中有n个构造器,则最多有 n - 1构造器中使用了"this(形参列表)"
  • ④ 规定:"this(形参列表)"必须声明在当前构造器的首行
  • ⑤ 构造器内部,最多只能声明一个"this(形参列表)",用来调用其他的构造器

package关键字的使用

  • 1.为了更好的实现项目中类的管理,提供包的概念
  • 2.使用package声明类或接口所属的包,声明在源文件的首行
  • 3.包,属于标识符,遵循标识符的命名规则、规范(xxxyyyzzz)、“见名知意”
  • 4.每"."一次,就代表一层文件目录。
  • 补充:同一个包下,不能命名同名的接口、类。 不同的包下,可以命名同名的接口、类。

import关键字的使用

  • import:导入
    1. 在源文件中显式的使用import结构导入指定包下的类、接口
    1. 声明在包的声明和类的声明之间
    1. 如果需要导入多个结构,则并列写出即可
    1. 可以使用"xxx.*"的方式,表示可以导入xxx包下的所有结构
    1. 如果使用的类或接口是java.lang包下定义的,则可以省略import结构
    1. 如果使用的类或接口是本包下定义的,则可以省略import结构
    1. 如果在源文件中,使用了不同包下的同名的类,则必须至少有一个类需要以全类名的方式显示。
    1. 使用"xxx.*"方式表明可以调用xxx包下的所有结构。但是如果使用的是xxx子包下的结构,则仍需要显式导入
    1. import static:导入指定类或接口中的静态结构:属性或方法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java 中可以使用正则表达式和计数器来统计关键词的出现次数,具体步骤如下: 1. 定义一个包含关键词的字符串数组。 2. 通过正则表达式匹配每个关键词在文本中出现的次数。 3. 将每个关键词的出现次数累加到计数器中。 4. 输出每个关键词的出现次数。 下面是一个简单的示例代码,可以统计 Java 代码中出现的关键词数量: ```java import java.util.regex.Matcher; import java.util.regex.Pattern; public class KeywordCounter { public static void main(String[] args) { String[] keywords = {"abstract", "assert", "boolean", "break", "byte", "case", "catch", "char", "class", "const", "continue", "default", "do", "double", "else", "enum", "extends", "final", "finally", "float", "for", "if", "implements", "import", "instanceof", "int", "interface", "long", "native", "new", "package", "private", "protected", "public", "return", "short", "static", "strictfp", "super", "switch", "synchronized", "this", "throw", "throws", "transient", "try", "void", "volatile", "while"}; String code = "public class Test {\n" + " public static void main(String[] args) {\n" + " int a = 10;\n" + " int b = 20;\n" + " int c = a + b;\n" + " System.out.println(\"Sum of \" + a + \" and \" + b + \" is \" + c);\n" + " }\n" + "}"; int[] keywordCounts = new int[keywords.length]; for (int i = 0; i < keywords.length; i++) { Pattern pattern = Pattern.compile("\\b" + keywords[i] + "\\b"); Matcher matcher = pattern.matcher(code); while (matcher.find()) { keywordCounts[i]++; } } for (int i = 0; i < keywords.length; i++) { System.out.println(keywords[i] + ": " + keywordCounts[i]); } } } ``` 输出结果为: ``` abstract: 0 assert: 0 boolean: 0 break: 0 byte: 0 case: 0 catch: 0 char: 0 class: 1 const: 0 continue: 0 default: 0 do: 0 double: 0 else: 0 enum: 0 extends: 0 final: 0 finally: 0 float: 0 for: 0 if: 0 implements: 0 import: 0 instanceof: 0 int: 3 interface: 0 long: 0 native: 0 new: 1 package: 1 private: 0 protected: 0 public: 2 return: 1 short: 0 static: 1 strictfp: 0 super: 0 switch: 0 synchronized: 0 this: 1 throw: 0 throws: 0 transient: 0 try: 0 void: 1 volatile: 0 while: 0 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值