java中 内部类访问外部类

内部类如何理解对于外部类来说,因把内部类看作外部类的属性还是方法理解。内部类如何访问外部类的属性方法。及内部类的作用。
当内部类为静态时,情况又如何。

2个回答

内部类隐含的保存了一个引用,这个引用指向创建它的外围类对象。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Java匿名内部类访问外部类的局部变量
Java匿名内部类访问外部类的局部变量,那么这个局部变量需要用final修饰吗? 为什么我的测试没有用final却可以?
为什么静态内部类成员变量不能直接被外部类访问
静态内部类属于外部类本身,这样为什么外部类依旧不能访问静态内部类成员?
java在匿名内部类中如何访问外部的变量?
``` package 线程优先级; import java.awt.*; import javax.swing.*; public class MyThread extends JFrame { static int i=0; private static Thread thread[]=new Thread[4]; private static JProgressBar pb[]=new JProgressBar[4]; public MyThread(String title) { super(title); Container container=this.getContentPane(); container.setLayout(new GridLayout(4,1)); for(int i=0;i<4;i++) { pb[i]=new JProgressBar(); pb[i].setStringPainted(true); } while(i<4) { thread[i]=new Thread(new Runnable(){ public void run(){ int progress=0; while(progress<=100) { try{ Thread.sleep(100); }catch(Exception e) { e.printStackTrace(); } pb[i].setValue(progress++); //此处有问题 } } } ); i++; } for(int i=0;i<4;i++) container.add(pb[i]); this.setSize(400,400); this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); thread[0].setPriority(5); thread[1].setPriority(5); thread[2].setPriority(4); thread[3].setPriority(3); i=0; while(i<4) { thread[i].start(); i++; } } public static void main(String[] args) { new MyThread("线程优先级"); } } ``` 这段代码由于我在run()方法里设置进度条的数字时用了静态变量,导致在调用线程start()方法的时候里面的进度条只动了一条。如果不用静态变量的话我又不知道怎么在Runnable的匿名内部类中访问外部循环的i,有没有什么办法在匿名内部类中能够访问外部的参数,而且不是常量不是静态变量?
java关于如何访问内部类的问题
问题描述: 一、学习了内部类,我自己总结了一些规律,想请教大家是不是正确的(最好有所补充): 1、如果想访问没有static修饰的内部类,先要访问其外部类(内部类在外部类里),再由外部类通过方法(或者别的办法)去访问内部类。 2、而如果内部类在外部类的方法里,要先访问外部类,再通过访问方法来访问内部类。 3、总的来说就是要访问内部类要先访问其外面的类或者方法。 二、首先假设有外部类A包含内部类B(不在方法中)。 当内部类被static修饰后,可以用如下方法访问内部类: A.B b = new A.B(); 如果没有static修饰则要用如下方法: A a = new A() ; A.B b = a.new b() ; 第一个方法是如何访问内部类的(我知道是规定的,但我想知道究竟是如何实现的)?难道是用static修饰后,类B变成了类A的一部分(就好像静态方法一样?),所以可以直接实例化内部类B(static修饰的内部类B可以看作外部类)?顺带一问:用static修饰的内部类为什么可以看作外部类? 问题有点多,大家清楚哪个就说哪个。 希望大家不吝赐教。
在外部类中为什么可以直接访问内部类的私有成员?
在外部类中为什么可以直接访问内部类的私有成员?比如,root=root.next,这条语句出现在外部类的方法中,这里,root是定义在外部类中的一个内部类对象,而next是root对象的一个私有属性,为什么可以这样写?
为什么外部类能访问内部类的私有成员?
在学习单例时发现,外部类可以访问内部类的私有成员 如下面代码所示: //Initialization on Demand Holder class Singleton { private Singleton() { } private static class HolderClass { private final static Singleton instance = new Singleton(); } public static Singleton getInstance() { return HolderClass.instance; } public static void main(String args[]) { Singleton s1, s2; s1 = Singleton.getInstance(); s2 = Singleton.getInstance(); System.out.println(s1==s2); } } 内部类能访问外部类成员比较好理解,但为什么外部类能访问内部类的私有成员呢?
java中定义了一个静态内部类,在主函数中访问此内部类中静态函数时只能通过建立对象调用而不是类名调用
图片简略,图片的说明解释了图片大意 [定义的外部类](https://img-ask.csdn.net/upload/201511/23/1448274562_852105.png) [外部类中的内部类,包括的静态函数](https://img-ask.csdn.net/upload/201511/23/1448274616_151040.png) [用类名调用方式调用内部类中静态函数](https://img-ask.csdn.net/upload/201511/23/1448274575_485375.png) [报错提示如图](https://img-ask.csdn.net/upload/201511/23/1448274625_729595.png) [用调用非静态函数方法尝试](https://img-ask.csdn.net/upload/201511/23/1448274657_999874.png) [编译运行成功](https://img-ask.csdn.net/upload/201511/23/1448274790_26884.png) 如图,为什么定义了一个静态内部类,在主函数中访问此内部类中静态函数时只能通过建立对象调用而不是类名调用,谁能帮忙解答疑惑?
JAVA内部类继承问题中输出外部类对象!!!
public class Main{ class A{ int a; public A(int a1){a=a1;} } public static void main(String[] arges){ } } class B{ private int i=0; class Binter extends Main.A{ public Binter(Main M,int a2){ M.super(a2); } public void f(){ System.out.println(B.this); System.out.println(Main.this); } } public static void main(String[] arges){ B b=new B(); Main m=new Main(); B.Binter bb=b.new Binter(m,2); bb.f(); } } 为什么“System.out.println(Main.this);”会出现"在作用域中,没有任何类型 Main 的外层实例可访问"错误信息?
一个局部内部类可以访问非final的外部对象?
``` class Outer1 { int x=100; void method(int a) { int y=4; class Inner { void function() { System.out.println(y); } } new Inner().function(); } } public class InnerDemo2 { public static void main(String[]args) { new Outer1().method(7); } } ``` 看公开课上说,局部内部类只能访问final的变量,为什么我可以,是JDK版本不同的原因吗?还是什么?
关于java,eclipse有哪位大神能说说嘛?
内部类怎么访问外部类的私有变量?关于java,有哪位大神能说说嘛?
为什么访问静态内部类的方法不会加载外部类的静态代码块?
调用B的时候不是应该先加载A吗? ``` public class test3 { public static void main(String[] args) { A.B.go(); } } class A{ static{ System.out.println("a"); } static class B{ static{ System.out.println("b"); } public static void go(){ System.out.println("go"); } } } ```
java程序如何穿透代理访问外部网?(代码有错嘛,谢谢!)
[code="java"]package src.test; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import sun.misc.BASE64Encoder; public class URLTest { public static void main(String[] args){ try{ System.setProperty("proxySet", "true"); System.setProperty("http.proxyHost", "11.0.1.210"); System.setProperty("http.proxyPort", "8080"); URL u = new URL("http://www.baidu.com"); HttpURLConnection conn = (HttpURLConnection)u.openConnection(); String authentication = "caixian2:96191264"; String encodedLogin = new BASE64Encoder().encodeBuffer(authentication.getBytes()); conn.setRequestProperty("Proxy-Authorization", "Basic " + encodedLogin); conn.connect(); int length = conn.getContentLength(); System.out.println(length); InputStream is = conn.getInputStream(); byte[] b = new byte[4 * 1024]; is.read(b); for(int i = 0; i < b.length; i++){ System.out.print((char)b[i]); } }catch(IOException e){ e.printStackTrace(); } } } [/code] 我在单位的内部网通过代理设置上网,现在想写个程序来访问外部网,在网上找了哈偶都资料,我个人感觉代码应该没有错误啊,可是就是报异常,如下: [code="java"]java.lang.IllegalArgumentException: Illegal character(s) in message header value: Basic Y2FpeGlhbjI6OTYxOTEyNjQ= at sun.net.www.protocol.http.HttpURLConnection.checkMessageHeader(HttpURLConnection.java:200) at sun.net.www.protocol.http.HttpURLConnection.setRequestProperty(HttpURLConnection.java:1553) at src.test.URLTest.main(URLTest.java:23) Exception in thread "main" [/code] 高人们帮个忙,看看我哪里还写错了,非常感谢!!!
springboot2.2.1配置https的问题
## 环境 java:&emsp;&emsp;&emsp;&emsp;1.8.0\_231 springboot:&nbsp;&emsp; 2.2.1 内置tomcat:&emsp; 9.0.27 maven:&emsp;&emsp;&emsp;&emsp;3.6.2 idea:&emsp;&emsp;&emsp; 2019.2.4最新版 thymeleaf:&emsp;&emsp;3.0.11 ## 介绍 (两个项目) ### 第一个写了springSecurity和jwt,配置了druid(1.1.2) 按照正常方式配置了https,实现了http转https, ![配置文件](https://img-ask.csdn.net/upload/201911/20/1574250462_832231.png) ![http转https](https://img-ask.csdn.net/upload/201911/20/1574250506_961687.png) 项目启动正常,日志输出没有问题,访问页面,报错了 `ERROR logging.DirectJDKLog *log #175 -- Error running socket processor java.lang.UnsatisfiedLinkError: org.apache.tomcat.jni.SSL.renegotiatePending(J)I` ![图片说明](https://img-ask.csdn.net/upload/201911/20/1574249418_332121.png) ### 第二个项目 只写了一个简单的页面,没有其余的任何没用的东西,同样启动没有问题,访问页面报一样的错 ![图片说明](https://img-ask.csdn.net/upload/201911/20/1574249817_869827.png) 推测是tomcat版本问题,把springboot换成2.1.0,内置tomcat变成9.0.12,访问正常 又查到相关的话题是tomcat的tomcat-native版本问题,但是得不到更多的有用信息,也不知道怎么换版本。 对了,期间使用了外置的tomcat9.0.12,启动访问都没有问题,之前修改了tomcat的server.xml,配置成http转https,修改了web.xml,加了一些标签,如图。 ![图片说明](https://img-ask.csdn.net/upload/201911/20/1574251125_261342.png) 之后又使用了外置的tomcat9.0.27部署,访问正常。 ## 总结 springboot2.2.1,内置tomcat9.0.27,访问失败 springboot2.1.0,内置tomcat9.0.12,访问成功 springboot2.2.1和springboot2.1.0,外置tomcat,访问成功 推测是tomcat的web.xml配置的那几行标签起了作用,但是不敢妄断。 (空一行,以示敬重) 前辈们,咋办呢?? <br/><br/><br/>又试了一下,去掉外部tomcat9.0.27的web.xml的配置也可以正常运行,内置的相同版本不行,是不是找问题的方向错了,其他东西都没有配置,不一样的就是内部web.xml是通过ServletWebServerFactory设置的,但是设置成功了啊,http可以跳转到https。。。。。。。。。 <br/> 望大佬指点????
使用java static做缓存 如何定时清理重置static数据
调用外部接口返回数转json加处理需要两分钟,但是数据变化不会太大,现在希望用 缓存存起来,定时重置缓存,使用公司内部缓存工具可以做到设置超时时间如果缓存为空则调用接口且重新为缓存赋值,但缓存失效时总会存在需要直接访问接口而导致访问太慢,所以我想是不是可以用static对数据做内存缓存,思路:用定时任务定时为静态变量重置赋值,但目前遇到如下几个疑问: 1.static变量如何回收,如果我先给变量赋予一个json对象1,再让变量等于另外一个json对象2,之前的对象1 jvm会做什么处理,直接回收掉还是一直留着内存中? 2.有没有其他方式做内存缓存?
java rmi连接远程主机问题
问题是这样的,通过rmi来实现分布式通信,用的是20112端口,在本地实现的时候是没问题的,但是部署到主机(亚马逊云机,供外访问ip:54.**.72.52,内部IP是10.0.3.9,有防火墙,但是已经打开20112和20110端口),就不能访问了,错误 java.rmi.ConnectionException:Connetcion refused to host:10.0.3.9;nested exception: java.net.connetionException:connetion time out (我奇怪:外部ip既然能连上,怎么会卡到10.0.3.9那里啊,不应该是一台机子吗?) 然后我在网上找答案:他们说20112端口是rmi通信端口,而数据发送还需要一个端口,需重写一个类,然后我就写了: public class MyRMISocket extends RMISocketFactory { public Socket createSocket(String host, int port) throws IOException { System.out.println("client socket"+host+":"+port); return new Socket(host, port); } @Override public ServerSocket createServerSocket(int port) throws IOException { if (port == 0) { System.out.println("original port is 0"); port = 20110; //不指定就随机分配了 } // port=dataPort; System.out.println("prot"+port); return new ServerSocket(port); } } 按照网上的说法:指定20110来设置固定的端口来穿越防火墙,但是我设置之后,在本地测试的时候发现打印的log根本就没使用这个20110,还是rmi的我指定的那个端口20112,这是为什么,难道在一个网段里面不需要另起端口,还是我的理解有错误? 下面是我的服务端和客户端的连接代码 server: UpdateGatway gatway1=new UpdateGatwayImpl(); RMISocketFactory.setSocketFactory (new MyRMISocket()); System.setProperty("java.rmi.server.hostname", "54.**.72.52"); Registry registry1=LocateRegistry.createRegistry(20112); registry1.rebind("vernumberGW", gatway1); (用Naming绑定的时候出错,就用registry来绑定了) client: UpdateGatway gatway1 = (UpdateGatway) Naming.lookup("//54.**.72.52:20112/vernumberGW"); 如果放到局域网通信没问题,那个服务器是windows系统,我试了 system.setproperty("java.rmi.server.hostname","54.**.72.52") 重写RmiSocketFactory的方法 到现在都不行,只要放到服务器就报错,我在网上看到说要设置 host文件,我也试了,好像没效果,况且他们说的太笼统,我把服务器上的host文件也粘出来吧,大家看看是哪儿的问题, # #127.0.0.1 localhost 我把前面的注释去掉也不行,各位看看是哪儿的问题,如果是host文件的事,那么应该怎么改,谢~!
小型数据分析系统的什么样的架构合适?
# 小型数据分析系统的什么样的架构合适 最近遇到一个高端元器件制造厂商 需要建设一套元件质控数据分析系统,项目情况需求是这样的: 1.每天产生的元件质检原始信息记录大概有 3千万条,日志文件1G左右 (质检信息记录 内容比较简单); 2.最低需求 隔天产生 各时间段、 各生产线、 各种质检问题类型 统计报表信息(有限几种纬度 统计数量 百分比 ) 实时性要求不高 ; 3.目前可用数据 来源有 质检系统的日志 相应的 数据库文件。 4.企业内部 不涉及 大量外部访问 he 这样的项目如何架构 ? 请大家 给些建议 。。 是否上大数据平台? 数据库如何选择 ? 传统数据库 如MYsql 是否能驾驭? 数据导入的问题?
做了一个小时的面试题(没有过 希望大家帮忙答下 虽然很幼稚 毕竟每个人都是这么过来的吗 感激了!)
XX软件工程师笔试试题 注:1、请参考人员将答案写在答题纸上,勿将答案写在此卷上。 2、请参考人员将编号与姓名填写在答题纸上。 1、 以下数据结构中不属于线性数据结构的是()。 A、队列 B、线性表 C、二叉树 D、栈 我的答案:C 2、 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是()。 A、 可行性分析 B、需求分析 C、详细设计 D、程序编码 我的答案:B 3、 结构化程序设计主要强调的是()。 A、 程序的规模 B、程序的易读性 C、程序的执行效率 D、程序的可移植性 我的答案:C 4、 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段()。 A、 概要设计 B、详细设计 C、可行性分析 D、需求分析 我的答案:B 5、 下列关于栈的叙述中正确的是()。 A、 在栈中只能插入数据 B、在栈中只能删除数据 B、 栈是先进先出的线性表 D、栈是先进后出的线性表 我的答案:D 6、 下面不属于软件设计原则的是()。 A、 抽象 B、模块化 C、自底向上 D、信息隐蔽 我的答案:C 7、 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为()。 A、 N+1 B、N C、(N+1)/2 D、N/2 我的答案:C 8、 视图设计一般有3种设计次序,下列不属于视图设计的是()。 A、 自顶向下 B、由外向内 C、由内向外 D、自底向上 我的答案:C 9、下列有关数据库的描述,正确的是()。 A、数据库是一个DBF文件 B、数据库是一个关系 C、数据库是一个结构化的数据集合 D、数据库是一组文件 我的答案:C 10、下列说法中,不属于数据模型所描述的内容的是()。 A、数据结构 B、数据操作 C、数据查询 D、数据约束 我的答案:A 11、若按功能划分,软件测试的方法通常分为白盒测试方法和(黑盒测试方法)。 12、数据库系统的三级模式分别为(级联)模式、内部级模式与外部级模式。 13、在最坏情况下,冒泡排序的时间复杂度为(N+1/2)。 14、在面向对象方法中,信息隐蔽是通过对象的(封装)性来实现的。 15、关系模型的数据操纵既是建立在关系上的数据操纵,一般有(插入)、增加、删除、和修改四种操作。 16、TIME()的返回值的数据类型是(String)类型。 17、编写SQL语句 1)、创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话 我的答案: create table student( studentCardNo number(2) primary key, name char(10), age number(2), sex char(2) check(sex in (‘男’,’女’)), address varchar2(100), tel number(2) ) 2)、修改学生表的结构,添加一列信息,学历 我的答案: alter table student add(xueli varchar2(20)); 3)、修改学生表的结构,删除一列信息,家庭住址 我的答案: alter table student drop column address; 4)、向学生表添加如下信息: 学号 姓名 年龄 性别 联系电话 学历 1 A 22 男 123456 小学 2 B 21 男 119 中学 3 C 23 男 110 高中 4 D 18 女 114 大学 我的答案: insert into student values(‘&1’,’&2’,’&3’); 一次一次添加 5)修改学生表的数据,将电话号码以11开头的学员的学历改为“大专” 我的答案: update student set xueli=”大专” where tel like 11%; 6)删除学生表的数据,姓名以C开头,性别为‘男’的记录删除 我的答案: delete student where name like C% or sex=”男”; 7)查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号显示出来 我的答案: select name,studentCardNo from student where age<22 and xueli=”大专”; 8)查询学生表的数据,查询所有信息,列出前25%的记录 我的答案: select top*0.25 from student; 9)查询出所有学生的姓名,性别,年龄降序排列 我的答案: select name,sex,age from student where age desc; 10)按照性别分组查询所有的平均年龄 我的答案: select avg(age) from student group by sex; 18、什么是存储过程?为什么存储过程要比单纯的SQL语句执行起来要快? 我的答案: 存储过程算是一种优化查询需要比单存SQL语句执行的要快 19、两张关联表,删除主表中已经在副表中没有的信息 我的答案 delete from fubiao a where a.fid not in(select id from zhubiao) 20、程序题: 用1、2、2、3、4、5这六个数字,用java或你熟悉的语言,打印出所有不同的排列,如:512234、412345等,要求:“4”不能再第三位,“3”与“5”不能相连。并将这些数据按从小到大输出。 我的答案 我的写的不好 没贴下 笔试的时候没写全 21、String 和 StringBuffer的区别 我的答案 String定长 StringBuffer 变长 22、&和&&的区别 我的答案 &短路与 &&逻辑与 网上答案: & 是位运算符,表示按位与运算, && 是逻辑运算符,表示逻辑与(and)。 23、final,finally,finalize的区别 我的答案 Final静变量关键字,finally异常关键字,finalize 网上答案 final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法, 可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。 24、数组有没有length()这个方法?String有没有length()这个方法? 我的答案: 数组没有length()这个方法,有length的属性。 String有length()这个方法。 25、是否可以继承String类? 我的答案: 不可以 解释的很乱 26、说出数据连接池的工作机制是什么? 我的答案: 反正解释的很乱我感觉 27、垃圾回收的优点和原理。并考虑2种回收机制。 我的答案: 动态回收 解释的很乱 网上答案: Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解, 它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有"作用域"的概念, 只有对象的引用才有"作用域"。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。 垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有 使用的对象进行清除和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。 回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 28、你所知道的集合类都有哪些?区别?主要方法? 我的答案: Arraylist 非线性的、Vertor线性的 29、JSP的内置对象及方法。 我的答案: Page,exception,out,page content,application,request,reponse,session,config 30、页面间对象传递的方法。 我的答案: 那几个方法都写错了 31、你知道Request对象的主要方法有哪些? 32、J2EE是技术还是平台还是框架? 我的答案: J2EE是技术也是平台 网上答案: J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。 J2EE也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。 33、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种(例如GBK编码类型)编码的字符串? Request encording(“GBK”) 34、j2ee常用的设计模式?说明工厂模式。 Gof23种设计模式 工厂模式:Factory 网上答案: Java中的23种设计模式: Factory(工厂模式), Builder(建造模式), Factory Method(工厂方法模式), Prototype(原始模型模式),Singleton(单例模式), Facade(门面模式), Adapter(适配器模式), Bridge(桥梁模式), Composite(合成模式), Decorator(装饰模式), Flyweight(享元模式), Proxy(代理模式), Command(命令模式), Interpreter(解释器模式), Visitor(访问者模式), Iterator(迭代子模式), Mediator(调停者模式), Memento(备忘录模式), Observer(观察者模式), State(状态模式), Strategy(策略模式), Template Method(模板方法模式), Chain Of Responsibleity(责任链模式) 工厂模式:工厂模式是一种经常被使用到的模式,根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例, 通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作。 首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法。 然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例。 当得到子类的实例后,开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例。 35、JSP四种会话跟踪技术 我的答案: Application cookie session 36、排序都有哪几种方法?请举例 冒泡 选择 快序 二分查找 网上答案: 排序的方法有:插入排序(直接插入排序、希尔排序), 交换排序(冒泡排序、快速排序), 选择排序(直接选择排序、堆排序), 归并排序,分配排序(箱排序、基数排序) 快速排序的伪代码。 //使用快速排序方法对a[ 0 :n- 1 ]排序 从a[ 0 :n- 1 ]中选择一个元素作为m i d d l e,该元素为支点 把余下的元素分割为两段left 和r i g h t,使得l e f t中的元素都小于等于支点,而right 中的元素都大于等于支点 递归地使用快速排序方法对left 进行排序 递归地使用快速排序方法对right 进行排序 所得结果为l e f t + m i d d l e + r i g h t 37、关于模块间的设计原则? 规范要一样 38、项目过程一般是怎样的?你参加过几个项目开发?参加过的项目流程是怎样的?自己负责与人合作工作内容及自我评价? 从需求调研——设计开发——实施 参加过网站的实施 模板的制作 39、tomcat自动关闭常见原因? 我的答案: 现在没遇到过 40、如何设置TOMCAT内存和连接数? 我的答案: Tomcat群集 41、你如何理解Tomcat是什么? 我的答案: Tomcat是JSP Servlet 容器恰当的说 42、静态变量和实例变量的区别? 我的答案: 静态变量域用final修饰,每次都被调用 实例变量则不会 43、IE、FF下面CSS的解释区别 我的答案: 自己编的 44、web前端技术你了解哪些技术? 我的答案: JAVAScript,CSS,DIV,Ajax,Ajax框架,DWR,dojo,jguery 45、什么是报表?什么是报表控件,作用是什么?你了解哪些报表工具? 我的答案: 解释的很乱 46、你了解的那些统计图表类型? 我的答案: 自己编的 47、Flex与数据库连接的三种方式? 我的答案: 自己编的 ------------------------------------------------------- 我答错的、 错在哪里? 没答上的帮忙解答下? 感激了 !
Ext 类继承的问题
我写了一个公共window类 主要作用是封装添加、修改员工的作用 已经实现 但是还有些小问题 1。如何声明内部变量 2。初始化数据如何该怎么写在类里面 而不需要外部调用才能初始化 代码如下: [code="java"] //用于智能提示显示 ///<reference path='JS/vswd-ext_2.2.js' /> /* 人员编辑,添加公用页面类 */ Ext.ux.EmployeeEditWindow = function(config){ //窗体隐藏属性 员工ID 新增为0 this.EmployeeEditWindow_ID = '-1'; //提交按钮的事件 this.EmployeeEidtWindow_SubmitFun = config.EmployeeEidtWindow_FunSubmit; //窗口类型 'Add','Edit' this.EmployeeEditWindow_WindowType = config.EmployeeEditWindow_WindosType; //初始化数据 this.EmployeeEditWindow_InitData = config.EmployeeEditWindow_InitData; //提交完毕后 需要刷新的storedata this.EmployeeEditWindow_RefreshStore = config.EmployeeEditWindow_RefreshStore; Ext.ux.EmployeeEditWindow.superclass.constructor.call(this,config); } Ext.extend(Ext.ux.EmployeeEditWindow,Ext.Window,{ labelSeparator : ': ', buttonAlign : 'center', plain: true, resizable: false, height: 220, width: 600, modal : true, //************************************显示编辑页面<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< initFormPanel:function(){ //-->页面 var Employee_ShowEmployeeForm_OKButton = new Ext.Button({ name : 'Employee_ShowEmployeeForm_OKButton', text : '提 交', minWidth : 100 }); var Employee_ShowEmployeeForm_CancelButton = new Ext.Button({ name : 'Employee_ShowEmployeeForm_CancelButton', text : '取 消', minWidth : 100 }); var Employee_ShowEmployeeForm_CName = new Ext.form.TextField({ name : 'CName', fieldLabel : '<span style="color:red">姓 名</span>', allowBlank : false, width : 150 }); var Employee_ShowEmployeeForm_EName = new Ext.form.TextField({ name : 'EName', fieldLabel : '英 文 名', width : 150 }); var Employee_ShowEmployeeForm_Password = new Ext.form.TextField({ name : 'Password', inputType : 'password', fieldLabel : '<span style="color:red">密 码</span>', allowBlank : false, width : 150 }); var Employee_ShowEmployeeForm_RepeatPassword = new Ext.form.TextField({ name : 'RepeatPassword', inputType : 'password', vtype:'password', fieldLabel : '<span style="color:red">重复密码</span>', allowBlank : false, width : 150, vtype:'password', vtypeText:"两次密码不一致!", confirmTo:Employee_ShowEmployeeForm_Password.getId() }); var Employee_ShowEmployeeForm_PhoneCall = new Ext.form.TextField({ name : 'PhoneCall', fieldLabel : '座 机', width : 150 }); var Employee_ShowEmployeeForm_MobileNo = new Ext.form.TextField({ name : 'MobileNo', fieldLabel : '手 机', width : 150 }); var Employee_ShowEmployeeForm_Birthday = new Ext.form.DateField({ name : 'Birthday', fieldLabel : '生 日', width : 150 }); var Employee_ShowEmployeeForm_Department = GetDepartmentTree('所属部门','DepartmentID'); var Employee_ShowEmployeeForm_Sex = GetDictionaryByCategoryID(1,'性 别',true,'SexID'); Employee_ShowEmployeeForm_Sex.width = 150; var Employee_ShowEmployeeForm_Duty = GetDictionaryByCategoryID(5,'职 务',true,'DutyID'); Employee_ShowEmployeeForm_Duty.width = 150; return new Ext.form.FormPanel({ name : 'Employee_ShowEmployeeForm_Panel', frame : true, border : false, labelAlgin:'right', modal : true, items : [ {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_CName ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_EName ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Password ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_RepeatPassword ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_MobileNo ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_PhoneCall ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Birthday ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Department ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Sex ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Duty ]} ]} ] }); }, //************************************提交按钮事件<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< AppendButtonDell:function(){ if (this.fp.form.isValid()){ this.fp.form.doAction('submit', { url : 'JSON/System/Employee.aspx', mothed:'POST', waitMsg:'正在提交。。。', params : {FunctionName : 'Sys_Employee_AddEmployee'}, success : function(form, action){ var json = action.result.success; if (json){ Ext.Msg.alert('系统提示','新职员数据成功!'); this.fp.form.reset(); if (this.EmployeeEditWindow_RefreshStore){ this.EmployeeEditWindow_RefreshStore.reload(); } } else{ Ext.Msg.alert('系统提示','数据提交失败,请重试!'); } }.createDelegate(this), failure : function(form, action){ switch (action.failureType){ case Ext.form.Action.CLIENT_INVALID: Ext.Msg.alert("错误", "提交的表单数据无效,请检查!"); break; case Ext.form.Action.CONNECT_FAILURE: Ext.Msg.alert("错误", "服务器连接失败,请稍后再试!"); break; case Ext.form.Action.SERVER_INVALID: Ext.Msg.alert("错误", "提交服务器出错,请联系管理员!"); } }.createDelegate(this) }); } else { Ext.Msg.alert('系统提示','有必填项没有填写或者两次密码不一致,请检查!'); }; }, //************************************初始化页面事件<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< InitData:function(){ if (this.EmployeeEditWindow_WindowType == 'add'){ return; }; if (this.EmployeeEditWindow_InitData[0]){ if (this.fp){ this.fp.form.loadRecord(this.EmployeeEditWindow_InitData[0]); } } this.EmployeeEditWindow_ID = this.EmployeeEditWindow_InitData[0].get('ID'); }, //************************************取消按钮事件<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< CancelButtonDell:function(){ if (this){ this.close(); } }, //************************************初始化界面<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< initComponent : function(){ Ext.ux.EmployeeEditWindow.superclass.initComponent.call(this); this.fp = this.initFormPanel(); this.add(this.fp); this.addButton('取 消',this.CancelButtonDell,this); this.addButton('提 交',this.AppendButtonDell,this); if (this.EmployeeEditWindow_WindowType == 'add'){ this.title = '添加员工' } else if (this.EmployeeEditWindow_WindowType == 'edit'){ this.title = '修改员工' }; } //************************************初始化界面<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< }) [/code] [b]问题补充:[/b] 我修改成这个样子 [code="java"] Ext.ux.EmployeeEditWindow = function(config){ //窗体隐藏属性 员工ID 新增为0 this.EmployeeEditWindow_ID = '-1'; //提交按钮的事件 this.EmployeeEidtWindow_SubmitFun = config.EmployeeEidtWindow_FunSubmit; //窗口类型 'Add','Edit' this.EmployeeEditWindow_WindowType = config.EmployeeEditWindow_WindosType; //初始化数据 this.EmployeeEditWindow_InitData = config.EmployeeEditWindow_InitData; //提交完毕后 需要刷新的storedata this.EmployeeEditWindow_RefreshStore = config.EmployeeEditWindow_RefreshStore; var sss = 'dddd'; Ext.ux.EmployeeEditWindow.superclass.constructor.call(this,config); } [/code] 但是在下面 Ext.extend(Ext.ux.EmployeeEditWindow,Ext.Window,{ 。。。。 } 好像无法访问到sss 应该如何访问sss呢? 另外 我页面中有几个combobox 但是我发现点击修改后 字典没有翻译成为数据 为什么?应该怎么处理呢?谢谢
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
JSON解析——net.sf.json.JSONObject
简介 在程序开发过程中,在参数传递,函数返回值等方面,越来越多的使用JSON。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,同时也易于机器解析和生成、易于理解、阅读和撰写,而且Json采用完全独立于语言的文本格式,这使得Json成为理想的数据交换语言。 JSON建构于两种结构: “名称/值”对的集合(A Collection of name/va...
卸载 x 雷某度!GitHub 标星 1.5w+,从此我只用这款全能高速下载工具!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个喜欢在网上收集各种资源的蒟蒻… 网上资源眼花缭乱,下载的方式也同样千奇百怪,比如 BT 下载,磁力链接,网盘资源等等等等,下个资源可真不容易,不一样的方式要用不同的下载软件,因此某比较有名的 x 雷和某度网盘成了我经常使用的工具。 作为一个没有钱的穷鬼,某度网盘几十 kb 的下载速度让我...
2019年还剩1天,我从外包公司离职了
这日子过的可真快啊,2019年还剩1天,外包公司干了不到3个月,我离职了
我一个37岁的程序员朋友
周末了,人一旦没有点事情干,心里就瞎想,而且跟几个老男人坐在一起,更容易瞎想,我自己现在也是 30 岁了,也是无时无刻在担心自己的职业生涯,担心丢掉工作没有收入,担心身体机能下降,担心突...
计算机网络的核心概念
这是《计算机网络》系列文章的第二篇文章 我们第一篇文章讲述了计算机网络的基本概念,互联网的基本名词,什么是协议以及几种接入网以及网络传输的物理媒体,那么本篇文章我们来探讨一下网络核心、交换网络、时延、丢包、吞吐量以及计算机网络的协议层次和网络攻击。 网络核心 网络的核心是由因特网端系统和链路构成的网状网络,下面这幅图正确的表达了这一点 那么在不同的 ISP 和本地以及家庭网络是如何交换信息的呢?...
python自动下载图片
近日闲来无事,总有一种无形的力量萦绕在朕身边,让朕精神涣散,昏昏欲睡。 可是,像朕这么有职业操守的社畜怎么能在上班期间睡瞌睡呢,我不禁陷入了沉思。。。。 突然旁边的IOS同事问:‘嘿,兄弟,我发现一个网站的图片很有意思啊,能不能帮我保存下来提升我的开发灵感?’ 作为一个坚强的社畜怎么能说自己不行呢,当时朕就不假思索的答应:‘oh, It’s simple. Wait for me for a ...
一名大专同学的四个问题
【前言】   收到一封来信,赶上各种事情拖了几日,利用今天要放下工作的时机,做个回复。   2020年到了,就以这一封信,作为开年标志吧。 【正文】   您好,我是一名现在有很多困惑的大二学生。有一些问题想要向您请教。   先说一下我的基本情况,高考失利,不想复读,来到广州一所大专读计算机应用技术专业。学校是偏艺术类的,计算机专业没有实验室更不用说工作室了。而且学校的学风也不好。但我很想在计算机领...
复习一周,京东+百度一面,不小心都拿了Offer
京东和百度一面都问了啥,面试官百般刁难,可惜我全会。
Java 14 都快来了,为什么还有这么多人固守Java 8?
从Java 9开始,Java版本的发布就让人眼花缭乱了。每隔6个月,都会冒出一个新版本出来,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份,...
达摩院十大科技趋势发布:2020 非同小可!
【CSDN编者按】1月2日,阿里巴巴发布《达摩院2020十大科技趋势》,十大科技趋势分别是:人工智能从感知智能向认知智能演进;计算存储一体化突破AI算力瓶颈;工业互联网的超融合;机器间大规模协作成为可能;模块化降低芯片设计门槛;规模化生产级区块链应用将走入大众;量子计算进入攻坚期;新材料推动半导体器件革新;保护数据隐私的AI技术将加速落地;云成为IT技术创新的中心 。 新的画卷,正在徐徐展开。...
轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API ...
讲真,这两个IDE插件,可以让你写出质量杠杠的代码
周末躺在床上看《拯救大兵瑞恩》 周末在闲逛的时候,发现了两个优秀的 IDE 插件,据说可以提高代码的质量,我就安装了一下,试了试以后发现,确实很不错,就推荐给大家。 01、Alibaba Java 代码规范插件 《阿里巴巴 Java 开发手册》,相信大家都不会感到陌生,其 IDEA 插件的下载次数据说达到了 80 万次,我今天又贡献了一次。嘿嘿。 该项目的插件地址: https://github....
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
程序员如何通过造轮子走向人生巅峰?
前言:你所做的事情,也许暂时看不到成果。但不要灰心,你不是没有成长,而是在扎根。 程序员圈经常流行的一句话:“不要重复造轮子”。在计算机领域,我们将封装好的组件、库,叫做轮子。因为它可以拿来直接用,直接塞进我们的项目中,就能实现对应的功能。 有些同学会问,人家都已经做好了,你再来重新弄一遍,有什么意义?这不是在浪费时间吗。 殊不知,造轮子是一种学习方式,能快速进步,造得好,是自己超强能力的表...
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
阿里面试一个ArrayList我都能跟面试官扯半小时
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
良心推荐,我珍藏的一些Chrome插件
上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。 我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。 Markdown Here Markdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
史上最全的IDEA快捷键总结
现在Idea成了主流开发工具,这篇博客对其使用的快捷键做了总结,希望对大家的开发工作有所帮助。
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
谁是华为扫地僧?
是的,华为也有扫地僧!2020年2月11-12日,“养在深闺人不知”的华为2012实验室扫地僧们,将在华为开发者大会2020(Cloud)上,和大家见面。到时,你可以和扫地僧们,吃一个洋...
Idea 中最常用的10款插件(提高开发效率),一定要学会使用!
学习使用一些插件,可以提高开发效率。对于我们开发人员很有帮助。这篇博客介绍了开发中使用的插件。
AI 没让人类失业,搞 AI 的人先失业了
最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 “这里写我跑路的消息实在太夸张了。” 王葱葱哼笑一下,把消息分享给群里。 阿杰也看了消息,笑了笑。在座几位也都笑了。 王葱葱是个有名的人物,21岁那年以全额奖学金进入 KMU 攻读人工智能博士,累计发表论文 40 余篇,个人技术博客更是成为深度学习领域内风向标。 ...
立即提问