下面程序的输出结果是多少? import java.util.Date; public class Test extends Date{ public static void main(String[] args) { new Test().test(); } public void test(){ System.out.println( super.getClass().getName()); } } 答:结果是Test。 原因:在test方
简介 最近思考了一下这几年写的业务,都是用面向过程思路来实现。之所以用面向过程 一是因为大家都这么写,很少去思考是否有更好的实现 二是业务简单,使用面向过程编程可以很方便的实现 三是业务需要快速上线,面向过程的方法更快更直接 但是弊端也很明显,随着业务不断的积累,项目改
重写 用关键字 virtual 修饰的方法,叫虚方法。可以在子类中用override 声明同名的方法,这叫“重写”。相应的没有用virtual修饰的方法,我们叫它实方法。 重写会改变父类方法的功能。 public class C1 { public virtual string GetName() { return "徐明祥";
JS 实现继承的几种方式 方式一: 原型链继承 参考外链: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Inheritance_and_the_prototype_chain function Parent1() { this.name = 'parent1'; this.play = [1, 2, 3] } function Child1() { this.type = '
迪米特法则的定义 迪米特法则(Law of Demeter,LoD)又叫作最少知识原则(Least Knowledge Principle,LKP),产生于 1987 年美国东北大学(Northeastern University)的一个名为迪米特(Demeter)的研究项目,由伊恩·荷兰(Ian Holland)提出,被 UML 创始者之一的布奇(Booch)普及,后来又因为在经典著作《程序
原创:https://liaoyongguang.blog.csdn.net/ 背景: 在电商项目中所需要的业务非常多,所以我们的业务数据也会有很多种,这个时候就会有什么VO,DTO,PO等等这些,把业务和我们的基础数据进行分离转换。但是一直都没有什么好一点的转换类。后来用了一下BeanUtils.copyPropertie,和Propert
1.thenAccept方法,前置子线程运行成功才执行,能获取前一个任务结果,无返回结果 thenAccept 前置执行成功,后续仍使用前置的子线程执行,无返回结果 thenAcceptAsync一个参数方法 前置执行成功,后续使用守护线程执行,无返回结果 thenAcceptAsync两个参数方法 前置执行成功,后续使用新
0、字符串中括号((、)、{、}、[、])的匹配 简单写法 IE 不兼容,主要是因为用到了ES6的语法 function isValid(str){ if(!str.trim()) return -1; var stack = []; var keys = [')',']','}']; var values = ['(','[','{']; v
1 两个线程同时访问一个对象的同步方法 synchronized 起作用 2 两个线程访问的是两个对象的同步方法 synchronized 不起作用 3 两个线程访问的是 synchronized 的静态方法 synchronized 起作用 4 同时访问同步方法和非同步方法 synchronized 不会影响其他方法,即非同步方法不
蔡徐坤vs吴亦凡 public class Demo100 { static class Hero{ private String name; private String [] skill; private int[] skillHurts; private double hp; public String getName(){ return name; } public void setName(String nam
1、getName() 一个Class对象描述了一个特定类的属性,Class类中最常用的方法getName以 String 的形式返回此 Class 对象所表示的实体(类、接口、数组类、基本类型或 void)名称。 2、newInstance() Class还有一个有用的方法可以为类创建一个实例,这个方法叫做newInstance()。例如: x.getC
今天做了个小测试 , 关于一个空集合(非null) , get集合内元素的属性; public class test01 { // 测试,集合为空时,执行for循环,get元素属性,是否会抛出异常; public static void main(String[] args) { List<User> beans = new ArrayList<>(); // List<User> beans
1、getName() 一个Class对象描述了一个特定类的属性,Class类中最常用的方法getName以 String 的形式返回此 Class 对象所表示的实体(类、接口、数组类、基本类型或 void)名称。 2、newInstance() Class还有一个有用的方法可以为类创建一个实例,这个方法叫做newInstance()。例如: x.getC
不论是类中对于const成员函数的声明还是在类外对于成员函数的声明其方式是一样的,如下: void getName() const; 在函数声明的未部添加const关键字,表明函数不能修改其内部的成员变量的值。 如果是在类中定义const成员函数,那么其声明和定义都必须添加const关键字。如下: 在类中声
在接口中,可以定义default方法。例如,把Person接口的run()方法改为default方法: public class Main { public static void main(String[] args) { Person p = new Student("Xiao Ming"); p.run(); } } interface Person { String getName(); d
public class Demo02Lambda { public static void main(String[] args) { // 简化代码 new Thread(new Runnable() { @Override public void run() { System.out.println(Thread.currentThread().getName() + "----->新线程被创建了!"); } }).start(); // (参数列表) -> {一些重
$(function () { getName(); }) function selectName(id) { getName(options); } function getName(id) { $.ajax({ cache: false, type: "GET",
AOP(Aspect Oriented Programming 面向切面编程)是一种指在程序运行期间动态的将某段代码切入到指定方法的指定位置进行运行的编程方式,这种编程方式实现了代码复用,是对传统OOP(Object Oriented Programming,面向对象编程 )的补充。目前,Aspectj是Java社区里最完整最流行的AOP框架,在S
简单总结,工作中遇到的问题,仅供参考,如出现任何问题,不接受任何投诉与反驳,哈哈。 双层循环组合数据篇 业务开发中经常会遇到两个List List<Demo1> demo1List; List<Demo2> demo2List; for (Demo1 demo1 : demo1List) { for (Demo2 demo2 : demo2List) { if (demo1.g
// 1.工厂模式 function createPerson(name,age){ var obj = new Object(); obj.name = name; obj.age = age; obj.getName = function(){ console.log(this.name) }; return obj } var p1 = createPerson('1',11) var p2 = createPerson('2',22) p1.
在使用FTPClient开发的过程中,需要对FTP服务器查询文件,再通过文件名去获取对应的文件流 for (FTPFile file : files) { if (file.isFile()) { if (file.getName().endsWith(ext)) { // 根据
`public class ClassUtil { //获取类的方法、返回值和参数 public void ClassPrintMethodMessage(Object obj){ //获取类类型 Class cls = obj.getClass(); System.out.println("类名:"+cls.getName()); //获取类类型下面所有的方法,包含父类继承过来的方法(只包括public) Method[]
public void test() { String name = getClass().getName(); String name1 = super.getClass().getName(); String name2 = this.getClass().getName(); System.out.println(name); System.out.println(name1); System.out.println(name2); Syste
import java.io.File; import java.io.IOException; import java.io.StringWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map;
this的定义 this又叫做上下文环境,与作用域不同的是,他是在函数调用的时候才产生的。首先我们理解一下什么是上下文环境? 什么是上下文环境? 举个生活中的例子:比如说你在厨房做菜,那厨房就是你的上下文环境,你要拿一点辣椒,顺手就拿到了;比如你在试衣间,那试衣间就是你的上下文环境,你想