1.大量繁杂琐碎的细节牵制着程序员,使他们不可能有更多的时间和精力去从事创造性的劳动,执行对他们来说更为重要的任务。如确保程序的正确性、高效性。
2.程序员既要驾驭程序设计的全局又要深入每一个局部直到实现的细节,即使智力超群的程序员也常常会顾此失彼,屡出差错,因而所编出的程序可靠性差,且开发周期长。
3.由于用二进制代码语言进行程序设计的思维和表达方式与人们的习惯大相径庭,只有经过较长时间职业训练的程序员才能胜任,使得程序设计曲高和寡。
4.因为它的书面形式全是"密"码,所以可读性差,不便于交流与合作。
5.因为它严重地依赖于具体的计算机,所以可移植性差,重用性差。
这些弊端造成当时的计算机应用未能迅速得到推广。
1 package Com.TableTest; 2 //改变了数组的大小 3 public class TableText_10 { 4 private static Object resizeArray (Object oldArray, int newSize) { 5 int oldSize = java.lang.reflect.Array.getLength(oldArray); 6 Class elementType = oldArray.getClass().getComponentType(); 7 Object newArray = java.lang.reflect.Array.newInstance( 8 elementType,newSize); 9 int preserveLength = Math.min(oldSize,newSize); 10 if (preserveLength > 0) 11 System.arraycopy (oldArray,0,newArray,0,preserveLength); 12 return newArray; 13 } 14 15 // Test routine for resizeArray(). 16 public static void main (String[] args) { 17 int[] a = {1,2,3}; 18 a = (int[])resizeArray(a,5); 19 a[3] = 4; 20 a[4] = 5; 21 for (int i=0; i<a.length; i++) 22 System.out.println (a[i]); 23 } 24 25 }