static

Injecting a static EJB, nonsense?

走远了吗. 提交于 2020-01-19 05:51:47
问题 I want to write this piece of code : @Stateless public class MyEjb { @EJB private static MyOtherEjbWhichIWantStatic myOtherEjb; } It makes sense to me, that I want to inject an EJB in my class, as a static element, for various reason. Java is not very happy with that unfortunately com.sun.enterprise.container.common.spi.util.InjectionException: Illegal use of static field private static MyOtherEjbWhichIWantStatic myOtherEjb on class that only supports instance-based injection I don't get it,

Are C# auto-implemented static properties thread-safe?

旧城冷巷雨未停 提交于 2020-01-19 05:37:09
问题 I would like to know if C# automatically implemented properties, like public static T Prop { get; set; } , are thread-safe or not. Thanks! 回答1: It appears not. This is the decompilation with Reflector: private static string Test { [CompilerGenerated] get { return <Test>k__BackingField; } [CompilerGenerated] set { <Test>k__BackingField = value; } } 回答2: Section 10.7.4 of the C# specification states: When a property is specified as an automatically implemented property, a hidden backing field

Java核心技术读书笔记02

为君一笑 提交于 2020-01-19 04:06:28
第四章 对象和类 类之间的关系 最常见的三种关系 依赖("uses-a") Order依赖Account类看信息 聚合("has-a") Order包含多个Item 继承("is-a") 知识点:所有Java对象都存在堆中。 GregorianCalendar类所包含的方法要比Date类多得多。 public避免标记实例域,public数据域允许程序中的任何方法对其进行读取和修改,这破坏了封装。强烈建议用private。 构造器和类同名 每个类中有一个以上的构造器 构造器的参数可以有0个,1个或多个参数 构造器没有返回值 构造器总是伴随着new操作一起调用 如果需要返回一个可变对象的引用,应该先对它进行克隆。 静态方法: 一个方法不需要访问对象状态,其所需参数都是显示参数 一个方法只需要访问类中的静态域 静态代码块是在类被加载时被创建,非静态代码块是对象被创建时被加载的,不创建不会执行该类的非静态代码块。 · public class TestA { public static void main(String[] args) { B b=null; b=new B(); } } class B{ public static int numB=1; static{ System.out.println("static block: "+numB); } { System.out

求一共有多少种方式系列问题

天大地大妈咪最大 提交于 2020-01-19 03:42:05
求一共有多少种方式系列问题 故事背景: 舍罕王对宰相说:“这次 我不用麦子奖赏你了,我直接给你货币。 另外,我也不用棋盘了,我直接给你一个固定数 额的奖赏。 宰相思考了一下,回答道:没问题,陛下,就按照您的意愿。 不过,我有个小小的要 求。那就是您能否列出所有可能的奖赏方式 让我自己来选呢?假设有四种面额的钱币 1 元、2 元、5 元和 10 元,而您一共给我 10 元 那您可以奖赏我 1 张 10 元,或者 10 张 1 元 或者 5 张 1 元外加 1 张 5 元等等 如果考虑每次奖赏的金额和先后顺序 那么最终 一共有多少种不同的奖赏方式呢? 看到了一个这样的问题,想用Java代码解决一下 本方案用到了递归的方式计算 下面用Java代码做了个实现 考虑每次奖赏的金额和先后顺序 public class Allprobability { public static void main ( String [ ] args ) { //设置数额 int a = 10 ; get ( a , "" ) ; System . out . println ( "over" ) ; } private static int m = 0 ; /** * 计算后面可能发生的概率 * @param num 剩余 * @param s 缓冲字符串 */ private static void get

C++中的static关键字的总结

落花浮王杯 提交于 2020-01-19 03:00:36
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。 1.面向过程设计中的static 1.1静态全局变量 在全局变量前,加上关键字static,该变量就被定义成为一个 静态全局变量 。我们先举一个静态全局变量的例子,如下: //Example 1 #include <iostream.h> void fn(); static int n; //定义静态全局变量 void main() {   n=20;   cout<<n<<endl;   fn(); } void fn() {    n++;   cout<<n<<endl; } 静态全局变量有以下特点: 该变量在全局数据区分配内存; 未经初始化的静态全局变量会被程序自动初始化为0(默认初始化)( 自动变量的值是随机的,除非它被显式初始化 ); 静态全局变量在声明它的整个文件都是可见的,而在文件之外是不可见的;  静态变量都在全局数据区分配内存,包括后面将要提到的静态局部变量。 对于一个完整的程序,在内存中的分布情况如下:  代码区 全局数据区 堆区 栈区 一般程序的由new产生的动态数据存放在堆区,函数内部的自动变量存放在栈区。自动变量一般会随着函数的退出而释放空间,静态数据(即使是函数内部的静态局部变量

low memory killer

十年热恋 提交于 2020-01-19 01:59:32
1 low memory killer Android的lowmemory killer是基于linux的OOM(out ofmemory)规则改进而来的。OOM通过一些比较复杂的评分机制,对运行进程进行打分,然后将分数高的进程判定为bad进程,杀死进程并释放内存。OOM只有当系统内存不足的时候才会启动检查,而lowmemory killer则不仅是在应用程序分配内存发现内存不足时启动检查,它也会定时地进行检查。 Low memory killer主要是通过进程的oom_adj来判定进程的重要程度的。oom_adj的大小和进程的类型以及进程被调度的次序有关。 Low memory killer的具体实现在kernel,比如对于android L,代码在:/local/sourcecode/AndroidLSoul45/kernel-3.10/drivers/staging/android/lowmemorykiller.c。 1.1 基本原理 Low Memory Killer与OOM的区别:OOM即Out ofMemory是标准linuxKernel的一种内存管理机制,LowMemory Killer在它基础上作了改进:OOM基于多个标准给每个进程打分,分最高的进程将被杀死;LowMemory Killer则用oom_adj和占用内存的大小来选择Bad进程

JAVA单排日记-2020/1/17-异常的处理

假装没事ソ 提交于 2020-01-18 18:27:49
1. throw 关键字 必须写在方法的内部 throw 后面 new 的对象只能是 Exception 或者其子类 throw 抛出的指定异常对象,我们必须处理: throw 后面 new 的对象如果是 RuntimeException 或者其子类, 运行期异常 ,可以不管,默认交给JVM处理(打印异常,中断程序) throw 后面 new 的对象如果是 Exception ,或者其 某些 子类,编译期异常(写代码的时候报错),要么 throws ,要么 try...catch 以后在工作中,必须对方法参数进行合法性校验,如果参数不合法,必须使用抛出异常 例子: 编写一个方法,要求实现打印数组在索引出的元素 普通写法: public class Demo02 { public static void main ( String [ ] args ) { } public static void method ( int [ ] array , int index ) { System . out . println ( array [ index ] ) ; } } 正常情况下我们会要求:数组不能为null,指针不能超过数组长度 public class Demo02 { public static void main ( String [ ] args ) { } public

position之static

ε祈祈猫儿з 提交于 2020-01-18 14:28:09
position :static 静态定位/常规定位/自然定位 作用: 使元素定位于常规流/自然流中 特点: 忽视top、bottom、left、right、z-index,是这些关键字作用失效 如果两个元素都设置了外边距,最终的外边距取决于外边距大的 在具有固定width和height值时的元素,如果把左右边距设置成auto,则左右边距会自动扩大占满剩余宽度,实现这个块水平居中的效果 案例1(解释第一个特点): 在这个案例中,有三个盒子,先是按照自然流顺序。 <body> <div class="box">box</div> <div class="box">box</div> <div class="box">box</div> </body> 并且给每个盒子加了一个box类。又加了一个相对定位,top为10px。 *{ margin: 0; padding: 0; } .box{ height: 200px; width: 200px; border: 2px solid; text-align: center; line-height: 200px; position: relative; top: 10px; } 效果: 这里先不说加完position:relation;top:10px;是什么意思,其效果就是让每个盒子都下移10px; 然后给第二个盒子加这样一些属性:

hook

坚强是说给别人听的谎言 提交于 2020-01-18 08:22:03
本脚本作用 拦截原有按键 修改成另一个按键 环境win10 打包参数 IL2CPP 2018.2.0f2 Windows X86 .NET 4.x 放到Unity里注意当unity失去焦点时 应取消键盘钩子 否则在程序外也会生效 using UnityEngine; using System; using System.Diagnostics; using System.Runtime.InteropServices; public class MonoPInvokeCallbackAttribute : Attribute { public MonoPInvokeCallbackAttribute() { } } public class WindowsKeyTool : MonoBehaviour { private const int WH_KEYBOARD_LL = 13; private const int WM_KEYDOWN = 0x0100; private static LowLevelKeyboardProc _proc = HookCallback; private static int _hookID; public static bool KeyOn = true; void Start() { UnhookWindowsHookEx((IntPtr)

单例设计模式

余生颓废 提交于 2020-01-18 02:28:38
什么是单例设计模式?  单例模式,是一种常见的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式的方法创建的类在当前进程中只有一个实例。  在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都或多或少具有资源管理器的功能。每台计算机可以有若干个打印机,但只能有一个Printer Spooler,以避免两个打印作业同时输出到打印机中。每台计算机可以有若干通信端口,系统应当集中管理这些通信端口,以避免一个通信端口同时被两个请求同时调用。总之,选择单例模式就是为了避免不一致状态,避免政出多头。 单例模式有以下特点: 单例类只能有一个实例 单例类必须自己创建自己的唯一实例 单例类必须给所有的其他对象提供这一实例 具体实现 需要: 将构造方法私有化,使其不能在类的外部通过new关键字实例化该类对象 在该类内部产生一个唯一的实例化对象,并且将其封装为private static类型 定义一个静态方法返回这个唯一对象 实现一:立即加载/“饿汉模式” /** * 饿汉式:在类初始化的时候,已经创建自己的实例 */ public class Singleton { //1,私有化构造方法 private Singleton(){} //2,创建自己的单例对象 private final static Singleton